Descriere
Obiectul WebSecurity oferă securitate și de autentificare pentru aplicatii ASP.NET pagini web.
Cu obiectul WebSecurity puteți crea conturi de utilizator, autentificare și utilizatorii dezautentificarea, reseta sau schimba parole, și multe altele.
WebSecurity obiect de referință - Proprietăți
Proprietăți | Descriere |
---|---|
CurrentUserId | Ajunge ID-ul pentru utilizatorul curent |
CurrentUserName | Devine numele utilizatorului curent |
HasUserId | Returnează true dacă curentul are un ID de utilizator |
IsAuthenticated | Returnează true dacă utilizatorul curent este conectat |
WebSecurity obiect de referință - Metode
Metodă | Descriere |
---|---|
ChangePassword() | Modifică parola pentru un utilizator |
ConfirmAccount() | Confirmă un cont utilizând un simbol de confirmare |
CreateAccount() | Creează un nou cont de utilizator |
CreateUserAndAccount() | Creează un nou cont de utilizator |
GeneratePasswordResetToken() | Generează un semn care poate fi trimis către utilizator prin e-mail |
GetCreateDate() | Ajunge timpul a fost creat de membru specificat |
GetPasswordChangeDate() | Gets data și ora când parola a fost schimbată |
GetUserId() | Devine un ID de utilizator de la un nume de utilizator |
InitializeDatabaseConnection() | Inițializează sistemul WebSecurity (database) de (database) |
IsConfirmed() | Verifică dacă un utilizator este confirmată |
IsCurrentUser() | Verifică dacă utilizatorul curent se potrivește cu un nume de utilizator |
Login() | Jurnalizează utilizatorul setând un jeton în cookie |
Logout() | Jurnalizează utilizatorul îndepărtând cookie jeton |
RequireAuthenticatedUser() | Părăsește pagina în cazul în care utilizatorul nu este un utilizator autentificat |
RequireRoles() | Părăsește pagina în cazul în care utilizatorul nu este o parte din rolurile specificate |
RequireUser() | Părăsește pagina în cazul în care utilizatorul nu este utilizatorul specificat |
ResetPassword() | Modifică parola unui utilizator folosind un jeton |
UserExists() | Verifică dacă există un anumit utilizator |
Date tehnice
Nume | Valoare |
---|---|
Clasă | WebMatrix.WebData.WebSecurity |
namespace | WebMatrix.WebData |
Asamblare | WebMatrix.WebData.dll |
Inițializarea WebSecurity Baza de date
Trebuie să creați sau să inițializeze o bază de date WebSecurity înainte de a putea utiliza obiectul WebSecurity în cod.
În rădăcina web, a crea o pagină (or edit the page ) numit _AppStart.cshtml.
Puneți următorul cod în fișierul:
_AppStart.cshtml
@{
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile",
"UserId", "Email", true);
}
Codul de mai sus va rula de fiecare dată când site - ul web (application) începe. Se inițializează baza de date WebSecurity.
„Utilizatorii“ este numele bazei de date WebSecurity (Users.sdf) .
„USERPROFILE“ este numele tabelului bazei de date care conține informații de profil de utilizator.
„IdUtilizator“ este numele coloanei care conține ID - urile de utilizator (primary key) .
„E - mail“ este numele coloanei care conține nume de utilizator.
Ultimul parametru adevărat este o valoare boolean care indică faptul că profilul de utilizator și tabelele de membru ar trebui să fie create în mod automat în cazul în care nu există, în caz contrar fals.
Deși adevărat indică crearea automată a tabelelor de baze de date, baza de date în sine nu va fi creat în mod automat. Acesta trebuie să existe.
WebSecurity Baza de date
Tabelul USERPROFILE conține o singură înregistrare pentru fiecare utilizator, cu un ID de utilizator (primary key) și numele utilizatorului (email) - (email) :
Numele de utilizator | |
---|---|
1 | [email protected] |
2 | [email protected] |
3 | [email protected] |
Tabelul de membru va conține informații privind calitatea de membru , atunci când a fost creat utilizatorul și dacă (and when) componența a fost confirmată.
La fel ca acest lucru (some columns are not shown) :
Utilizator id-ul | Crea Data | Confirmare Jeton | Este Confirmat | Ultimul Parola eșec | Parola | Parola Schimbare |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | NUL | Adevărat | NUL | AFNQhWfy .... | 12.04.2012 16:12:17 |
Notă: Dacă doriți să vedeți toate coloanele și tot conținutul, deschide baza de date cu WebMatrix si uita-te în interiorul fiecărui tabel.
Configurare simplă de membru
S-ar putea obține erori folosind obiectul WebSecurity, în cazul în care site - ul nu este configurat pentru a utiliza pagini ASP.NET Web sistem de membru SimpleMembership.
Acest lucru se poate întâmpla dacă serverul unui furnizor de hosting este configurat în mod diferit decât serverul local. Pentru a remedia această problemă, adăugați elementul următor în fișierul Web.config site-ului:
<appSettings>
<add key="enableSimpleMembership" value="true" />
</appSettings>