Umbraco 7.7.3 以编程方式为新用户设置密码



我正在使用UmbracoContext.Application.Services.UserService以编程方式在umbraco 7.7.3中创建用户(不是成员!(:

user = userService.CreateUserWithIdentity(someMailAddress, someMailAddress);
user.AddGroup((UserGroup)someGroup);
user.StartMediaId = someMediaId;
user.StartContentId = SomeContentId;
userService.Save(user);
userService.SavePassword(user,password);

用户已正确创建。

我没有使用userService.CreateWithIdentity方法,因为我需要提供哈希密码,并且我不知道如何哈希我想要提供给这些新用户的默认密码。

我正在尝试使用userService.SavePassword((方法,但是我收到异常说:">此提供程序不支持手动更改密码">

我在某处读到,我应该在 web.config 中将 UmbracoMemberProvider 元素中的属性 allowManualChangePassword 设置为 true,但它对我不起作用。

任何帮助将不胜感激:(

UmbracoMembershipProvider指的是成员,而不是用户,因此在这种情况下,您应该更改此值UsersMembershipProvider

您也可以尝试为新创建的用户设置RawPasswordValue属性:

user.RawPasswordValue = (Membership.Providers["UsersMembershipProvider"] as UsersMembershipProvider).HashPasswordForStorage(password);

最新更新