Question

Est-il possible de contrôler le format du mot de passe généré automatiquement par un appel à MembershipUser.ResetPassword ()?

Je veux pouvoir autoriser ou non certains caractères spéciaux dans le mot de passe généré.

J'utilise SqlMembershipProvider avec le format de mot de passe Hashed.

Merci.

Était-ce utile?

La solution

Consultez cet article - Modification du format du mot de passe généré automatiquement dans SqlMembershipProvider .

  

J'ai trouvé un moyen rapide de pirater SqlMembershipProvider pour générer des mots de passe moins complexes. Il s'agissait simplement de créer une nouvelle classe de fournisseur héritant de SqlMembershipProvider, puis de remplacer la méthode GeneratePassword.

Ce n'est pas une solution entièrement résolue mais cela pourrait aider.

Autres conseils

Vous pouvez effectuer cette opération en deux étapes, identifiées par Mark Fitzpatrick ici: http://bytes.com/groups/net-asp/689452-how-reset-users-password-without-having-use-passwordrecovery#post2740740

D'abord, réinitialisez le mot de passe, puis changez-le immédiatement dans un format de votre choix. Évidemment, il ne serait PAS recommandé d'utiliser une chaîne fixe comme dans l'exemple de Mark. Vous souhaitez implémenter un générateur de chaîne aléatoire .

user.ChangePassword(user.ResetPassword(), MyMethodToGenerateRandomPassword());

Aujourd'hui, vous pouvez également utiliser la méthode Membership.GeneratePassword et transmettre un MinRequiredPasswordLength ou utiliser la propriété déjà définie dans Web.config comme suit:

  var newPassword =
                   // 0 = Number of non alphanumeric characters
                  Membership.GeneratePassword(Membership.MinRequiredPasswordLength, 0);

  user.ChangePassword(user.ResetPassword(), newPassword);

J'espérais que certains paramètres de configuration pourraient être utilisés, mais le remplacement de la méthode GeneratePassword () fonctionne dans mon cas.

Nous avions déjà une classe d’utilitaire de chiffrement qui générerait les chaînes de mots de passe aléatoires, ce qui en faisait un changement assez rapide.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top