Freigeben über


MembershipPasswordFormat Enumeration

Definition

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
MembershipPasswordFormat

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 Konfiguration des machineKey-Elements festgelegt werden.

Hashed 1

Kennwörter werden mit dem SHA1-Hashalgorithmus unidirektional verschlüsselt. Mit dem hashAlgorithmType-Attribut können Sie einen anderen Hashalgorithmus als SHA-1 festlegen.

Microsoft empfiehlt aufgrund der Konflikte mit SHA1 SHA256.

Beispiele

Das folgende Beispiel zeigt das machineKey-Element (ASP.NET Settings Schema) im system.web Abschnitt der Web.config-Datei für eine ASP.NET-Anwendung. Sie gibt die Instanz der SqlMembershipProvider Anwendung an und legt das Kennwortformat auf fest 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, aber Sie sollten nur verwenden Hashedund EncryptedClear 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 als nicht sicher, da eine Sicherheitsverletzung, die Ihren Datenbankinhalt aufdeckt, 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. Hashkennwörter werden mit einem unidirektionierten gesalzenen Hash verschlüsselt, wenn sie in der Datenbank gespeichert werden. Wenn ein Kennwort überprüft wird, wird es mit einem Salt-Wert kombiniert und dann mit einem Hash versehen. Das Ergebnis wird zur Überprüfung mit dem Wert in der Datenbank verglichen. Verschlüsselte Kennwörter können nicht abgerufen werden.

Hinweis

Wenn Sie mit den Mitgliedschaftsfeatures von ASP.NET nicht vertraut sind, lesen Sie 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.

Gilt für:

Weitere Informationen