ASP.NET Web Pages - Oggetto WebSecurity
- Pagina precedente Classe di WebPages
- Pagina successiva Database di WebPages
Descrizione
L'oggetto WebSecurity fornisce sicurezza e autenticazione per le applicazioni ASP.NET Web Pages.
Attraverso l'oggetto WebSecurity, è possibile creare account utente, accedere e disconnettersi, resettare o cambiare password e altro ancora.
Manuale di riferimento dell'oggetto WebSecurity - Proprietà
Proprietà | Descrizione |
---|---|
CurrentUserId | Ottieni l'ID dell'utente corrente. |
CurrentUserName | Ottieni il nome dell'utente corrente. |
HasUserId | Ottieni il valore che indica se l'utente corrente ha un ID utente. Se sì, restituisce true. |
IsAuthenticated | Ottieni lo stato di autenticazione dell'utente corrente. |
Manuale di riferimento dell'oggetto WebSecurity - Metodi
Proprietà | Descrizione |
---|---|
ChangePassword() | Cambia la password dell'utente. |
ConfirmAccount() | Conferma che l'account è valido e attiva l'account. |
CreateAccount() | Crea un nuovo account utente. |
CreateUserAndAccount() | Crea un nuovo account utente. |
GeneratePasswordResetToken() | Genera un token di reset della password che può essere inviato per e-mail all'utente. |
GetCreateDate() | Restituisce la data e l'ora di creazione dell'account membership specificato. |
GetPasswordChangeDate() | Restituisce la data e l'ora dell'ultima modifica della password dell'account membership specificato. |
GetPasswordFailures SinceLastSuccess() |
Restituisce il numero di tentativi di login falliti con password errata dall'ultimo accesso o creazione dell'account membership. |
GetUserId() | Restituisce l'ID utente basato sul nome utente specificato. |
GetUserIdFrom PasswordResetToken () |
Restituisce l'ID utente dal token di ripristino della password. |
InitializeDatabaseConnection() | Inizializza il sistema di membership connettendosi al database che contiene le informazioni degli utenti. |
IsAccountLockedOut() | Indica se l'account di membership specificato è bloccato a causa di troppe tentativi di accesso falliti. |
IsConfirmed() | Restituisce un valore che indica se l'utente è stato confermato. |
IsCurrentUser() | Restituisce un valore che indica se il nome utente dell'utente connesso corrisponde al nome utente specificato. |
Login() | Accedi l'utente. |
Logout() | Disconnetti l'utente. |
RequireAuthenticatedUser() | Se l'utente non è autenticato, impostare lo stato HTTP su 401 (non autorizzato). |
RequireRoles() | Se l'utente corrente non appartiene al ruolo specificato, impostare il codice di stato HTTP su 401. |
RequireUser() | Se l'utente corrente non è l'utente specificato, impostare lo stato HTTP su 401. |
ResetPassword() | Ripristina la password utilizzando il token di ripristino della password. |
UserExists() | Controlla se l'utente esiste. |
Technical Data
Name | Value |
---|---|
Class | WebMatrix.WebData.WebSecurity |
Namespace | WebMatrix.WebData |
Assembly | WebMatrix.WebData.dll |
Inizializzare il database WebSecurity
Prima di utilizzare l'oggetto WebSecurity, deve creare o inizializzare il database WebSecurity.
Nella directory web, crea o modifica la pagina _AppStart.cshtml.
Scrivi il seguente codice nel file:
_AppStart.cshtml
@{ WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", true); }
Il sito web esegue il codice sopra ogni volta che viene avviato. Inizializzerà il database WebSecurity.
"Users" è il nome del database WebSecurity (Users.sdf)
"UserProfile" è il nome della tabella del database che contiene le informazioni di configurazione dell'utente.
"UserId" è il nome della colonna che contiene l'UserId (chiave primaria).
"Email" è il nome della colonna che contiene il nome utente.
L'ultimo parametro true è un valore logico che indica se devono essere creati i tabella del profilo utente e della membership (se non esistono), altrimenti false.
Suggerimento: anche se true indica la creazione automatica delle tabelle del database, il database stesso non viene creato automaticamente. Deve esistere.
Database WebSecurity
Ogni record nella tabella UserProfile rappresenta un utente, inclusi l'UserId (chiave primaria) e il nome utente (email):
UserId | |
---|---|
1 | john@johnson.net |
2 | peter@peterson.com |
3 | lars@larson.eut |
La tabella Membership contiene informazioni di membership, come quando l'utente ha creato e se (e quando) ha confermato la membership.
Simile a questo (alcune colonne non elencate):
UserId | Data di creazione | Conferma Token |
Sei sicuro? Conferma |
Ultimo Password errata |
Password | Cambio password |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | NULL | True | NULL | AFNQhWfy.... | 12.04.2012 16:12:17 |
Nota:Se desideri vedere tutte le colonne e tutti i contenuti, apri il database tramite WebMatrix e consulta ogni tabella.
Configurazione membership semplice
Se il tuo sito non è configurato per utilizzare il sistema di membership ASP.NET Web Pages SimpleMembership, potrebbe verificarsi un errore durante l'uso dell'oggetto WebSecurity.
Se la configurazione del provider di host è diversa dalla tua server locale, si può verificare un errore. Per risolvere questo problema, aggiungi i seguenti elementi nel file Web.config del sito:
<appSettings> <add key="enableSimpleMembership" value="true" /> </appSettings>
- Pagina precedente Classe di WebPages
- Pagina successiva Database di WebPages