Ultimele tutoriale de dezvoltare web
 

ASP.NET Pagini Web - WebSecurity obiect


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 E-mail
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>