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
Clear | 0 | Nicht sicher – nicht verwenden. Kennwörter werden nicht verschlüsselt. |
Encrypted | 2 | Nicht sicher – nicht verwenden. Kennwörter werden mithilfe der Verschlüsselungseinstellungen verschlüsselt, die durch die MachineKey-Elementkonfiguration festgelegt werden. |
Hashed | 1 | Kennwörter werden mit dem SHA1-Hashalgorithmus unidirektional verschlüsselt. Mit dem Microsoft empfiehlt aufgrund der Konflikte mit SHA1 SHA256. |
Beispiele
Das folgende Beispiel zeigt das machineKey-Element (ASP.NET Einstellungen Schema) im system.web
Abschnitt der Web.config-Datei für eine ASP.NET Anwendung. Sie gibt die Instanz der Anwendung an SqlMembershipProvider und legt das Kennwortformat auf Hashed
fest.
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, aber Sie sollten nur verwenden Hashed
und sind nicht Clear
Encrypted
sicher. Eindeutige Kennwörter sind nicht sicher und sollten nicht verwendet werden. Sie werden als Nur-Text gespeichert. Verschlüsselte Kennwörter werden nicht als sicher betrachtet, da eine Sicherheitsverletzung, die ihre Datenbankinhalte offenlegt, 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 werden, und können für den Kennwortvergleich oder den Kennwortabruf entschlüsselt werden. Hash-Kennwörter werden bei der Speicherung in der Datenbank mithilfe eines einseitigen Salt-Hashs verschlüsselt. Wenn ein Kennwort überprüft wird, wird es mit einem Salt-Wert kombiniert und dann mit einem Hashwert versehen. Das Ergebnis wird mit dem Wert in der Datenbank zur Überprüfung verglichen. Verschlüsselte Kennwörter können nicht abgerufen werden.
Hinweis
Wenn Sie nicht mit den Mitgliedschaftsfeatures von ASP.NET vertraut sind, lesen Sie Einführung in die Mitgliedschaft, bevor Sie fortfahren. Eine Liste anderer Themen im Zusammenhang mit der Mitgliedschaft finden Sie unter Verwalten von Benutzern mithilfe der Mitgliedschaft.