SqlMembershipProvider Klasse
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.
Verwaltet Speicher der Mitgliedschaftsinformationen für eine ASP.NET-Anwendung in einer SQL Server-Datenbank.
public ref class SqlMembershipProvider : System::Web::Security::MembershipProvider
public class SqlMembershipProvider : System.Web.Security.MembershipProvider
type SqlMembershipProvider = class
inherit MembershipProvider
Public Class SqlMembershipProvider
Inherits MembershipProvider
- Vererbung
Beispiele
Das folgende Codebeispiel zeigt die Web.config-Datei für eine ASP.NET-Anwendung, die für die Verwendung von SqlMembershipProviderkonfiguriert ist.
<configuration>
<connectionStrings>
<add name="SqlServices" connectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
</connectionStrings>
<system.web>
<authentication mode="Forms" >
<forms loginUrl="login.aspx"
name=".ASPXFORMSAUTH" />
</authentication>
<authorization>
<deny users="?" />
</authorization>
<membership defaultProvider="SqlProvider"
userIsOnlineTimeWindow="15">
<providers>
<add
name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
applicationName="MyApplication"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
passwordAttemptWindow="10" />
</providers>
</membership>
</system.web>
</configuration>
Hinweise
Hinweis
ASP.NET-Mitgliedschaftsanbieter wurden von ASP.NET Identity abgelöst. Es wird dringend empfohlen, Apps so zu aktualisieren, dass sie die ASP.NET Identity Platform anstelle der Mitgliedschaftsanbieter verwenden.
Diese Klasse wird von den Membership Klassen und MembershipUser verwendet, um Mitgliedschaftsdienste für eine ASP.NET-Anwendung mithilfe einer SQL Server-Datenbank bereitzustellen. Sie können eine SqlMembershipProvider ohne SQL Server nicht verwenden. Wenn auf Ihrem Computer SQL Server Express installiert ist, wobei der Standardname instance und die Benutzer-Instancing aktiviert sind, erstellt das Objekt bei der SqlMembershipProvider ersten Ausführung der Anwendung eine Datenbank, die im Verzeichnis der Anwendung App_Data
aufgerufen aspnetdb
wird.
Um die Datenbank manuell zu erstellen, führen Sie die Aspnet_regsql.exe
ausführbare Datei aus, die %systemroot%\Microsoft.NET\Framework\ versionNumber
sich im Ordner befindet, und geben Sie die -A m
Option an (z. B. aspnet_regsql.exe -A m
). Die erstellte Datenbank heißt Aspnetdb. Führen Aspnet_regsql.exe
Sie alternativ aus, um den GUI-Konfigurationsmodus zu pullen, und wählen Sie alle ASP.NET Features aus.
Wenn der Mitgliedschaftsanbieter mit einer Verbindungszeichenfolge konfiguriert ist, die integrierte Sicherheit verwendet, muss das Prozesskonto der ASP.NET-Anwendung über Berechtigungen zum Herstellen einer Verbindung mit der SQL Server-Datenbank verfügen.
Die Machine.config-Datei definiert eine Standard-instance SqlMembershipProvider namensAspNetSqlMembershipProvider
, die eine Verbindung mit der Standard-SQL Server Express instance auf dem lokalen Computer herstellt. Sie können diese instance des Anbieters verwenden, wenn Sie SQL Server Express mit dem Standardnamen instance installiert haben, oder Sie können in der Web.config-Datei für Ihre ASP.NET-Anwendung eigene instance definieren.
Wenn Sie das passwordCompatMode
Attribut auf Framework40festlegen, kann die Anwendung die In ASP.NET 4 hinzugefügten Optionen für Hash- und Verschlüsselungsmitgliedschaften verwenden. Wenn das passwordCompatMode
Attribut jedoch auf Framework20festgelegt ist, können nur die Optionen für Hash- und Verschlüsselungsmitgliedschaften aus den ASP.NET 2.0, ASP.NET 3.5 und ASP.NET 3.5 SP1 verwendet werden. Der Standardwert ist Framework20. Weitere Informationen finden Sie unter MembershipPasswordCompatibilityMode.
Konstruktoren
SqlMembershipProvider() |
Initialisiert eine neue Instanz der SqlMembershipProvider-Klasse. |
Eigenschaften
ApplicationName |
Ruft den Namen der Anwendung ab, für die Mitgliedschaftsinformationen gespeichert und abgerufen werden sollen, oder legt diesen fest. |
Description |
Ruft eine kurze, benutzerfreundliche Beschreibung ab, die für die Anzeige in Verwaltungstools oder anderen Benutzeroberflächen geeignet ist. (Geerbt von ProviderBase) |
EnablePasswordReset |
Ruft einen Wert ab, der angibt, ob der SQL Server-Mitgliedschaftsanbieter so konfiguriert ist, dass Benutzer ihre Kennwörter zurücksetzen können. |
EnablePasswordRetrieval |
Ruft einen Wert ab, der angibt, ob der SQL Server-Mitgliedschaftsanbieter so konfiguriert ist, dass Benutzer ihre Kennwörter abrufen können. |
MaxInvalidPasswordAttempts |
Ruft die Anzahl der zulässigen ungültigen Kennwort- oder Kennwortantwortversuche ab, bevor der Mitgliedschaftsbenutzer ausgesperrt wird. |
MinRequiredNonAlphanumericCharacters |
Ruft die minimale Anzahl von Sonderzeichen ab, die ein gültiges Kennwort enthalten muss. |
MinRequiredPasswordLength |
Ruft die minimale erforderliche Länge für ein Kennwort ab. |
Name |
Ruft den Anzeigennamen ab, der verwendet wird, um während der Konfiguration auf den Anbieter zu verweisen. (Geerbt von ProviderBase) |
PasswordAttemptWindow |
Ruft das Zeitfenster ab, in dem aufeinander folgende fehlerhafte Versuche, ein gültiges Kennwort oder eine gültige Kennwortantwort bereitzustellen, nachverfolgt werden. |
PasswordFormat |
Ruft einen Wert ab, der das Format zum Speichern von Kennwörtern in der SQL Server-Mitgliedschaftsdatenbank angibt. |
PasswordStrengthRegularExpression |
Ruft den regulären Ausdruck ab, der zum Auswerten eines Kennworts verwendet wird. |
RequiresQuestionAndAnswer |
Ruft einen Wert ab, der angibt, ob der SQL Server-Mitgliedschaftsanbieter so konfiguriert ist, dass der Benutzer zum Zurücksetzen und Abrufen des Kennworts eine Kennwortfrage beantworten muss. |
RequiresUniqueEmail |
Ruft einen Wert ab, der angibt, ob der SQL Server-Mitgliedschaftsanbieter so konfiguriert ist, dass eine eindeutige E-Mail-Adresse für jeden Benutzernamen erforderlich ist. |
Methoden
ChangePassword(String, String, String) |
Ändert das Kennwort eines Benutzers. |
ChangePasswordQuestionAndAnswer(String, String, String, String) |
Aktualisiert die Kennwortfrage und -antwort für einen Benutzer in der Mitgliedschaftsdatenbank von SQL Server. |
CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) |
Fügt der Mitgliedschaftsdatenbank von SQL Server einen neuen Benutzer hinzu. |
DecryptPassword(Byte[]) |
Entschlüsselt ein verschlüsseltes Kennwort. (Geerbt von MembershipProvider) |
DeleteUser(String, Boolean) |
Entfernt die Mitgliedschaftsinformationen eines Benutzers aus der Mitgliedschaftsdatenbank von SQL Server. |
EncryptPassword(Byte[]) |
Verschlüsselt ein Kennwort. (Geerbt von MembershipProvider) |
EncryptPassword(Byte[], MembershipPasswordCompatibilityMode) |
Verschlüsselt das angegebene Kennwort mithilfe des angegebenen Kennwortkompatibilitätsmodus. (Geerbt von MembershipProvider) |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
FindUsersByEmail(String, Int32, Int32, Int32) |
Gibt eine Auflistung der Mitgliedschaftsbenutzer zurück, für die das Adressfeld die angegebene E-Mail-Adresse enthält. |
FindUsersByName(String, Int32, Int32, Int32) |
Ruft eine Auflistung von Mitgliedschaftsbenutzern ab, deren Benutzername den angegebenen Vergleichsbenutzernamen enthält. |
GeneratePassword() |
Generiert nach dem Zufallsprinzip ein Kennwort mit einer Länge von mindestens 14 Zeichen. |
GetAllUsers(Int32, Int32, Int32) |
Ruft eine Auflistung aller Benutzer in der Mitgliedschaftsdatenbank von SQL Server ab. |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetNumberOfUsersOnline() |
Gibt die Anzahl der Benutzer zurück, die gegenwärtig auf die Anwendung zugreifen. |
GetPassword(String, String) |
Gibt das Kennwort für den angegebenen Benutzernamen aus der Mitgliedschaftsdatenbank von SQL Server zurück. |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
GetUser(Object, Boolean) |
Ruft die Informationen aus der Datenquelle für den Mitgliedschaftsbenutzer ab, der dem angegebenen eindeutigen Bezeichner zugeordnet ist, und aktualisiert gegebenenfalls den Datums-/Zeitstempel der letzten Aktivität des Benutzers. |
GetUser(String, Boolean) |
Gibt für einen Benutzer Informationen aus der Mitgliedschaftsdatenbank von SQL Server zurück und stellt eine Option zum Aktualisieren des Datums-/Zeitstempels der letzten Aktivität des Benutzers bereit. |
GetUserNameByEmail(String) |
Ruft den Benutzernamen ab, der der angegebenen E-Mail-Adresse zugeordnet ist. |
Initialize(String, NameValueCollection) |
Initialisiert den SQL Server-Mitgliedschaftsanbieter mit den Eigenschaftswerten, die in der Konfigurationsdatei der ASP.NET-Anwendung angegeben sind. Diese Methode ist nicht für die direkte Verwendung im Code vorgesehen. |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
OnValidatingPassword(ValidatePasswordEventArgs) |
Löst das ValidatingPassword-Ereignis aus, wenn ein Ereignishandler definiert wurde. (Geerbt von MembershipProvider) |
ResetPassword(String, String) |
Setzt das Kennwort eines Benutzers auf ein neues, automatisch generiertes Kennwort zurück. |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
UnlockUser(String) |
Hebt den Sperrstatus des Benutzers auf, sodass der Mitgliedschaftsbenutzer überprüft werden kann. |
UpdateUser(MembershipUser) |
Aktualisiert Informationen zu einem Benutzer in der Mitgliedschaftsdatenbank von SQL Server. |
ValidateUser(String, String) |
Überprüft, ob der angegebene Benutzername und das angegebene Kennwort in der Mitgliedschaftsdatenbank von SQL Server vorhanden sind. |
Ereignisse
ValidatingPassword |
Tritt auf, wenn ein Benutzer erstellt, ein Kennwort geändert oder ein Kennwort zurückgesetzt wird. (Geerbt von MembershipProvider) |
Gilt für:
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für