質問

クレーム認証とFBAセットアップを備えたSPサイトがあります。デュアル認証WIN/フォームは完全に機能しています。

ASPがあります:APPページのPasswordRecoveryコントロール。アカウントを正しく検索するように見えます - ユーザー名が見つからない場合、「見つかりません」メッセージを返します。ただし、次の実行でパスワードをリセットできません。

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 = "true"
アプリweb.configおよびtoken-service web.configに

手動テストを行うためにいくつかのコードを作成しましたが、パスワードを「リセット」しようとしたときにこれが得られました。
このプロバイダーは、パスワードリセットを許可するように構成されていません。パスワードリセットを有効にするには、設定ファイルの「true」にenablePassWordResetを設定します。

役に立ちましたか?

解決

ユーザーを適切に検索しているように見えるので、これは助けにならないかもしれません...しかし、これを行っていない場合、実装されていない問題に遭遇できることがわかっています。

適切なメンバーシッププロバイダーを使用して、ユーザーのインスタンスを取得してください。

例えば

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

お役に立てれば。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top