Najnowsze tutoriale tworzenie stron internetowych
 

ASP.NET Strony internetowe - WebSecurity obiektu


Opis

WebSecurity Obiekt zapewnia bezpieczeństwo i uwierzytelnianie dla aplikacji ASP.NET Web Pages.

Z obiektu WebSecurity można tworzyć konta użytkowników, logowanie i użytkowników wylogowania, zresetować lub zmienić hasła i inne.


WebSecurity Object Reference - Właściwości

Nieruchomości Opis
CurrentUserId Pobiera identyfikator bieżącego użytkownika
CurrentUserName Pobiera nazwę bieżącego użytkownika
HasUserId Zwraca true, jeśli prąd ma identyfikator użytkownika
IsAuthenticated Zwraca true, jeśli bieżący użytkownik jest zalogowany

WebSecurity obiekt wzorcowy - metody

metoda Opis
ChangePassword() Zmienia hasło dla użytkownika
ConfirmAccount() Potwierdza konta za pomocą tokena potwierdzeniem
CreateAccount() Tworzy nowe konto użytkownika
CreateUserAndAccount() Tworzy nowe konto użytkownika
GeneratePasswordResetToken() Generuje token, który może być wysłana jako użytkownik email
GetCreateDate() Pobiera czas określony członków utworzonego
GetPasswordChangeDate() Pobiera datę i czas, gdy hasło zostało zmienione
GetUserId() Pobiera identyfikator użytkownika z nazwą użytkownika
InitializeDatabaseConnection() Inicjuje system WebSecurity (database)
IsConfirmed() Sprawdza, czy użytkownik potwierdza
IsCurrentUser() Sprawdza, czy bieżący użytkownik pasuje do nazwy użytkownika
Login() Loguje użytkownika w ustawiając token w pliku cookie
Logout() Loguje użytkownika przez usunięcie plików cookie tokena
RequireAuthenticatedUser() Opuszcza stronę, jeśli użytkownik nie jest uwierzytelniony użytkownik
RequireRoles() Opuszcza stronę, jeśli użytkownik nie jest częścią określonych ról
RequireUser() Opuszcza stronę, jeśli użytkownik nie ma określonego użytkownika
ResetPassword() Zmienia hasło użytkownika za pomocą tokena
UserExists() Sprawdza, czy dany użytkownik istnieje

Dane techniczne

Nazwa Wartość
Klasa WebMatrix.WebData.WebSecurity
Przestrzeń nazw WebMatrix.WebData
Montaż WebMatrix.WebData.dll

Inicjowanie bazy WebSecurity

Musisz utworzyć lub zainicjować bazę WebSecurity zanim będzie można korzystać z obiektu WebSecurity w kodzie.

W katalogu głównym swojej sieci, utworzyć stronę (or edit the page ) o nazwie _AppStart.cshtml.

Umieść następujący kod wewnątrz pliku:

_AppStart.cshtml

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

Powyższy kod będzie działać za każdym razem strona internetowa (application) rozpoczyna. To inicjuje bazy WebSecurity.

„Użytkownicy” to nazwa bazy danych WebSecurity (Users.sdf) .

„UserProfile” to nazwa tabeli bazy danych, która zawiera informacje o profilu użytkownika.

„UserId” to nazwa kolumny zawierającej identyfikatory użytkownika (primary key) .

„Wyślij” to nazwa kolumny, która zawiera nazwy użytkowników.

Ostatnim parametrem prawda jest wartością logiczną wskazującą, że profil użytkownika i tabele członkostwa powinny być tworzone automatycznie, jeśli nie istnieje, w przeciwnym razie false.

Chociaż prawdą oznacza automatyczne tworzenie tabel bazy danych, sama baza danych nie zostanie utworzony automatycznie. Musi istnieć.


Baza WebSecurity

Tabela UserProfile zawiera jeden rekord dla każdego użytkownika z identyfikatorem użytkownika (primary key) i nazwa użytkownika (email) :

Identyfikator użytkownika E-mail
1 [email protected]
2 [email protected]
3 [email protected]

W tabeli Członkostwo będzie zawierać informacje na temat członkostwa, gdy użytkownik został stworzony, i jeśli (and when) przynależność został potwierdzony.

Podobnie jak ten (some columns are not shown) :

Użytkownik
ID
Stwórz
Data
Potwierdzenie
Znak
Jest
Zatwardziały
Ostatni, ubiegły, zeszły
Hasło
Niepowodzenie
Hasło Hasło
Zmiana
1 12.04.2012 16:12:17 ZERO Prawdziwe ZERO AFNQhWfy .... 12.04.2012 16:12:17

Uwaga: Jeśli chcesz zobaczyć wszystkie kolumny i wszystkie treści, otworzyć bazę danych z WebMatrix i zajrzeć do wnętrza każdej tabeli.


Prosta konfiguracja Członkostwo

Możecie się błędy przy użyciu obiektu WebSecurity, jeśli witryna nie jest skonfigurowany do korzystania z ASP.NET Web Pages system członkostwa SimpleMembership.

Taka sytuacja może wystąpić, jeśli serwer dostawcę usług hostingowych jest skonfigurowany inaczej niż lokalnym serwerze. Aby rozwiązać ten problem, należy dodać następujący element do pliku Web.config witryny:

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