SharePoint 2010 Revendications Auth / FBA - Réinitialiser mot de passe ne fonctionne pas
-
28-10-2019 - |
Question
J'ai un site SP avec la configuration d'authentification des réclamations et FBA. Double auth Win / Forms fonctionne parfaitement.
J'ai un asp: contrôle PasswordRecovery à la page de l'application. Il semble rechercher le compte correctement - retour « introuvable » messages si le nom d'utilisateur est introuvable. Cependant, il ne parvient pas à réinitialiser le mot de passe avec le Execption suivant:
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)
Merci à l'avance.
Mise à jour:
J'ai ajouté:
enablePasswordReset = "true"
à l'web.config de l'application et le web.config service jeton
A écrit un certain code pour faire un test manuel, et encore a quand mon code a essayé de «remise à zéro du mot de passe:
Ce fournisseur n'est pas configuré pour permettre des réinitialisations de mot de passe. Pour activer la réinitialisation de mot de passe, mettre enablePasswordReset à « true » dans le fichier de configuration.
La solution
Cela ne peut pas aider puisque vous semblez être à la recherche l'utilisateur correctement ... mais si vous ne faites pas ce que je sais que vous pouvez rencontrer des problèmes non mises en œuvre:
Assurez-vous d'obtenir une instance de l'utilisateur à l'aide du fournisseur d'appartenances approprié.
par exemple.
MembershipUser myUser = Membership.Providers["aspMembership"].GetUser(userName, false);
Hope this helps.