MembershipPasswordFormat Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Beschreibt das Verschlüsselungsformat zum Speichern von Kennwörtern für Mitgliedschaftsbenutzer.
public enum class MembershipPasswordFormat
public enum MembershipPasswordFormat
type MembershipPasswordFormat =
Public Enum MembershipPasswordFormat
- Vererbung
Felder
| Name | Wert | Beschreibung |
|---|---|---|
| Clear | 0 | Nicht sicher, nicht verwenden. Kennwörter sind nicht verschlüsselt. |
| Hashed | 1 | Kennwörter werden mithilfe des SHA1-Hashingalgorithmus verschlüsselt. Mithilfe des Attributs können Sie einen anderen Hashingalgorithmus als den Microsoft empfiehlt aufgrund der Konflikte mit SHA1 SHA256. |
| Encrypted | 2 | Nicht sicher, nicht verwenden. Kennwörter werden mit den Verschlüsselungseinstellungen verschlüsselt, die von der MachineKey-Elementkonfiguration bestimmt werden. |
Beispiele
Das folgende Beispiel zeigt das machineKey Element (ASP.NET Settings Schema)-Element im Abschnitt system.web der datei Web.config für eine ASP.NET Anwendung. Sie gibt die Instanz der Anwendung SqlMembershipProvider an und legt das Kennwortformat auf Hashed.
In diesem Beispiel wird SHA1 verwendet. Microsoft empfiehlt aufgrund der Konflikte mit SHA1 SHA256.
<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>
Hinweise
Die SqlMembershipProvider Klasse unterstützt verschiedene Kennwortspeicherformate, sie sollten jedoch nur verwendet Hashedwerden; Clear und Encrypted sind nicht sicher. Eindeutige Kennwörter sind nicht sicher und sollten nicht verwendet werden. Sie werden im Nur-Text-Format gespeichert. Verschlüsselte Kennwörter gelten nicht als sicher, da eine Verletzung, die Ihren Datenbankinhalt anzeigt, auch den Verschlüsselungsschlüssel verfügbar machen kann. Dies bedeutet, dass Ihre verschlüsselten Kennwörter entschlüsselt und verfügbar gemacht werden können. Kennwörter werden verschlüsselt, wenn sie gespeichert sind und für den Kennwortvergleich oder das Abrufen von Kennwörtern entschlüsselt werden können. Hash-Kennwörter werden mit einem unidirektionalem gesalzenen Hash verschlüsselt, wenn sie in der Datenbank gespeichert sind. Wenn ein Kennwort überprüft wird, wird es mit einem Salzwert kombiniert und dann hashed. Das Ergebnis wird mit dem Wert in der Datenbank zur Überprüfung verglichen. Hash-Kennwörter können nicht abgerufen werden.
Note
Wenn Sie mit den Mitgliedschaftsfunktionen von ASP.NET nicht vertraut sind, lesen Sie die Einführung in die Mitgliedschaft , bevor Sie fortfahren. Eine Liste mit anderen Themen im Zusammenhang mit der Mitgliedschaft finden Sie unter Verwalten von Benutzern mithilfe der Mitgliedschaft.