Neueste Web-Entwicklung Tutorials
 

ASP.NET Webseiten - WebSecurity Objekt


Beschreibung

Das WebSecurity Objekt bietet Sicherheit und Authentifizierung für ASP.NET Web Pages - Anwendungen.

Mit dem WebSecurity Objekt können Sie Benutzerkonten, Login und Logout Benutzer, zurücksetzen oder Passwörter ändern und vieles mehr erstellen.


WebSecurity Referenzobjekt - Eigenschaften

Eigenschaften Beschreibung
CurrentUserId Ruft die ID für den aktuellen Benutzer
CurrentUserName Ruft den Namen des aktuellen Benutzers
HasUserId Gibt true zurück, wenn der aktuelle Benutzer-ID hat
IsAuthenticated Gibt true zurück, wenn der aktuelle Benutzer angemeldet ist

WebSecurity Referenzobjekt - Methoden

Methode Beschreibung
ChangePassword() Ändert das Kennwort für einen Benutzer
ConfirmAccount() Bestätigt ein Konto eine Bestätigung Token
CreateAccount() Erstellt ein neues Benutzerkonto
CreateUserAndAccount() Erstellt ein neues Benutzerkonto
GeneratePasswordResetToken() Erzeugt ein Token, die als Benutzer gesendet werden, per E-Mail
GetCreateDate() Ruft die Zeit der angegebene Mitgliedschaft erstellt wurde
GetPasswordChangeDate() Ruft das Datum und die Zeit, wenn das Kennwort geändert wurde
GetUserId() Ruft einen Benutzer-ID aus einem Benutzername
InitializeDatabaseConnection() Initialisiert die WebSecurity System (database)
IsConfirmed() Prüft, ob ein Benutzer bestätigt
IsCurrentUser() Überprüft, ob der aktuelle Benutzer einen Benutzernamen übereinstimmt
Login() Meldet den Benutzer in durch ein Token in der Cookie-Einstellung
Logout() Meldet den Benutzer durch das Token-Cookie zu entfernen
RequireAuthenticatedUser() Beendet die Seite, wenn der Benutzer nicht ein authentifizierter Benutzer
RequireRoles() Beendet die Seite, wenn der Benutzer nicht ein Teil der angegebenen Rollen ist
RequireUser() Beendet die Seite, wenn der Benutzer nicht der angegebene Benutzer ist
ResetPassword() Ändert das Kennwort eines Benutzers ein Token
UserExists() Prüft, ob ein bestimmter Benutzer vorhanden

Technische Daten

Name Wert
Klasse WebMatrix.WebData.WebSecurity
Namespace WebMatrix.WebData
Versammlung WebMatrix.WebData.dll

Initialisierung der Datenbank WebSecurity

Sie müssen eine WebSecurity Datenbank erstellen oder initialisieren, bevor Sie das WebSecurity Objekt in Ihrem Code verwenden können.

In der Wurzel Ihrer Web, erstellen Sie eine Seite (or edit the page ) genannt _AppStart.cshtml.

Setzen Sie den folgenden Code in der Datei:

_AppStart.cshtml

@{
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", true);
}

Der obige Code wird jedes Mal , wenn die Webseite über (application) beginnt. Es initialisiert die WebSecurity Datenbank.

„Benutzer“ ist der Name der Datenbank WebSecurity (Users.sdf) .

„Userprofile“ ist der Name der Datenbanktabelle, die die Benutzerprofilinformationen enthält.

„Benutzer - ID“ ist der Name der Spalte , die den Benutzer - IDs enthält (primary key) .

„E - Mail“ ist der Name der Spalte , die Benutzernamen enthält.

Der letzte Parameter true ist ein boolean Wert , der angibt , dass das Benutzerprofil und die Mitgliedschaft Tabellen automatisch erstellt werden , wenn sie nicht vorhanden sind, andernfalls false.

Obwohl echte automatische Erstellung der Datenbanktabellen zeigt, wird die Datenbank selbst nicht automatisch erstellt werden. Es muss vorhanden sein.


Die WebSecurity Datenbank

Die Userprofile Tabelle enthält einen Datensatz für jeden Benutzer mit einem Benutzer - ID (primary key) und der Namen des Benutzers (email) - (email) :

Benutzeridentifikation Email
1 [email protected]
2 [email protected]
3 [email protected]

Die Mitgliedschaft Tabelle enthält die Mitgliedschaft Informationen darüber , wann der Benutzer erstellt wurde und wenn (and when) die Mitgliedschaft bestätigt wurde.

Ähnlich wie diese (some columns are not shown) :

Benutzer
Ich würde
Erstellen
Datum
Bestätigung
Zeichen
ist
bestätigt
Letzte
Passwort
Fehler
Passwort Passwort
Veränderung
1 12.04.2012 16.12.17 NULL Wahr NULL AFNQhWfy .... 12.04.2012 16.12.17

Hinweis: Wenn Sie alle Spalten und alle Inhalte sehen möchten, öffnen Sie die Datenbank mit WebMatrix und innerhalb jeder Tabelle schauen.


Einfache Mitgliedschaft Konfiguration

Sie könnten Fehler mit dem WebSecurity Objekt erhalten, wenn Ihre Website nicht das ASP.NET Web Pages Mitgliedschafts - System verwenden SimpleMembership konfiguriert ist.

Dies kann auftreten, wenn ein Server des Hosting-Provider anders als die lokalen Server konfiguriert ist. Um dies zu beheben, fügen Sie das folgende Element der Datei Web.config der Website:

<appSettings>
<add key="enableSimpleMembership" value="true" />
</appSettings>