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

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 hashAlgorithmType SHA1-Algorithmus angeben.

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.

Gilt für:

Weitere Informationen