关于 SharePoint 2010 声明身份验证/FBA:SharePoint 2010 声明身份验证/FBA – 重置密码不起作用

SharePoint 2010 Claims Auth/FBA - Reset password not working

我有一个带有声明身份验证和 FBA 设置的 SP 站点。 Dual auth Win/Forms 运行良好。

我在应用页面上有一个 asp:PasswordRecovery 控件。
它似乎可以正确查找帐户 - 如果未找到用户名,则返回"未找到"消息。但是,它无法使用以下 execption 重置密码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Exception information:
   Exception type: NotImplementedException  
   Exception message: The method or operation is not implemented.  


Thread information:
Thread ID: 10
Thread account name: SERVER01\\SPS_Farm
Is impersonating: False
Stack trace:    at    Microsoft.SharePoint.Administration.Claims.SPClaimsAuthMembershipProvider.GetUser(String name, Boolean userIsOnline)  
at System.Web.Security.MembershipProvider.GetUser(String username, Boolean userIsOnline, Boolean throwOnError)  
at System.Web.UI.WebControls.PasswordRecovery.AttemptSendPasswordUserNameView()  
at System.Web.UI.WebControls.PasswordRecovery.OnBubbleEvent(Object source, EventArgs e)  
at System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args)  
at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)  
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

提前致谢。

更新:
我补充说:
enablePasswordReset="真"
到应用程序 web.config 和令牌服务 web.config

写了一些代码来做一个手动测试,当我的代码试图\\'reset\\'密码时仍然得到这个:
此提供程序未配置为允许密码重置。要启用密码重置,请在配置文件中将 enablePasswordReset 设置为"true"。


这可能无济于事,因为您似乎正在正确地查找用户...但是如果您不这样做,我知道您可能会遇到未实现的问题:

确保使用适当的 Membership Provider 获取用户实例。

例如

1
MembershipUser myUser = Membership.Providers["aspMembership"].GetUser(userName, false);

希望这会有所帮助。