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 MachineKey-Elementkonfiguration 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 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.

Gilt für

Siehe auch