MembershipPasswordFormat Énumération
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Décrit le format de chiffrement pour le stockage des mots de passe des utilisateurs d’appartenance.
public enum class MembershipPasswordFormat
public enum MembershipPasswordFormat
type MembershipPasswordFormat =
Public Enum MembershipPasswordFormat
- Héritage
Champs
Clear | 0 | Non sécurisé, ne pas utiliser. Les mots de passe ne sont pas chiffrés. |
Encrypted | 2 | Non sécurisé, ne pas utiliser. Les mots de passe sont chiffrés à l’aide des paramètres de chiffrement déterminés par la configuration de l’élément machineKey. |
Hashed | 1 | Les mots de passe sont chiffrés à sens unique à l’aide de l’algorithme de hachage SHA1. Vous pouvez spécifier un algorithme de hachage différent de l’algorithme SHA1 à l’aide de l’attribut En raison de problèmes de collision avec SHA-1, Microsoft recommande SHA-256. |
Exemples
L’exemple suivant montre l’élément machineKey Element (ASP.NET Settings Schema) dans la system.web
section du fichier Web.config pour une application ASP.NET. Il spécifie l’instance de SqlMembershipProvider l’application et définit son format de mot de passe sur Hashed
.
Cet exemple utilise SHA1. En raison de problèmes de collision avec SHA-1, Microsoft recommande SHA-256.
<membership defaultProvider="SqlProvider"
userIsOnlineTimeWindow="20" hashAlgorithmType="SHA1">
<providers>
<add name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
passwordFormat="Hashed"
applicationName="MyApplication" />
</providers>
</membership>
Remarques
La SqlMembershipProvider classe prend en charge différents formats de stockage de mot de passe, mais vous devez uniquement utiliser Hashed
; Clear
et Encrypted
ne sont pas sécurisés. Les mots de passe clairs ne sont pas sécurisés et ne doivent pas être utilisés. Ils sont stockés en texte brut. Les mots de passe chiffrés ne sont pas considérés comme sécurisés, car une violation qui révèle le contenu de votre base de données peut également exposer la clé de chiffrement. Cela signifie que vos mots de passe chiffrés peuvent être déchiffrés et exposés. Les mots de passe sont chiffrés lorsqu’ils sont stockés et peuvent être déchiffrés à des fins de comparaison de mot de passe ou de récupération de mot de passe. Les mots de passe hachés sont chiffrés à l’aide d’un hachage salé unidirectionnel lorsqu’ils sont stockés dans la base de données. Lorsqu’un mot de passe est validé, il est combiné avec une valeur salt, puis haché. Le résultat est comparé à la valeur de la base de données à des fins de vérification. Les mots de passe hachés ne peuvent pas être récupérés.
Notes
Si vous n’êtes pas familiarisé avec les fonctionnalités d’appartenance de ASP.NET, consultez Présentation de l’appartenance avant de continuer. Pour obtenir la liste des autres rubriques relatives à l’appartenance, consultez Gestion des utilisateurs à l’aide de l’appartenance.