繁体   English   中英

在kentico 10中使用PBKDF2加密设置密码

[英]Set password with PBKDF2 encryption in kentico 10

我必须从Excel工作表中上传表CMS.User(FirstName,LastName,UserName,Email,UserPassword和UserPasswordFormat)中的大约500个用户。

如何加密密码并将其保存在数据库中?

var newUser = new UserInfo
{
    UserName = userDto.Email,
    UserEnabled = true,
    FirstName = userDto.FirstName,
    LastName = userDto.LastName,
    FullName = userDto.FirstName + " " + userDto.LastName,
    Email = userDto.Email,
    UserPasswordFormat = userDto.UserPasswordFormat,                
    SiteIndependentPrivilegeLevel = CMS.Base.UserPrivilegeLevelEnum.None
};

var newUserSettings = newUser.UserSettings ?? new UserSettingsInfo();

newUser.SetValue("UserPassword", userDto.UserPassword);

newUserSettings.UserPhone = userDto.PhoneNumber;

UserInfoProvider.SetUserInfo(newUser);

UserInfoProvider.AddUserToSite(newUser.UserName, site.SiteName);

在你的代码而不是

newUser.SetValue("UserPassword", userDto.UserPassword);

你应该使用:

UserInfoProvider.SetUserInfo(newUser); // saves user to DB
UserInfoProvider.SetPassword(newUser, userDto.UserPassword); // saves hashed password

Kentico也使用CMSHashStringSalt应用程序设置来进行散列密码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM