Descripción
El objeto WebSecurity proporciona seguridad y autenticación para aplicaciones de páginas Web ASP.NET.
Con el objeto WebSecurity puede crear cuentas de usuario, inicio de sesión y cierre de sesión de los usuarios, restablecer o cambiar las contraseñas, y mucho más.
WebSecurity objeto de referencia - Propiedades
propiedades | Descripción |
---|---|
CurrentUserId | Obtiene el ID para el usuario actual |
CurrentUserName | Obtiene el nombre del usuario actual |
HasUserId | Devuelve verdadero si la corriente tiene un ID de usuario |
IsAuthenticated | Devuelve verdadero si el usuario actual se ha identificado |
WebSecurity objeto de referencia - Métodos
Método | Descripción |
---|---|
ChangePassword() | Cambia la contraseña de un usuario |
ConfirmAccount() | Confirma una cuenta mediante un token de confirmación |
CreateAccount() | Crea una nueva cuenta de usuario |
CreateUserAndAccount() | Crea una nueva cuenta de usuario |
GeneratePasswordResetToken() | Genera una señal de que se puede enviar al usuario por correo electrónico como |
GetCreateDate() | Obtiene el periodo de suscripción especificado se ha creado |
GetPasswordChangeDate() | Obtiene la fecha y hora en que se cambió la contraseña |
GetUserId() | Obtiene un ID de usuario de un nombre de usuario |
InitializeDatabaseConnection() | Inicializa el sistema WebSecurity (database) |
IsConfirmed() | Comprueba si se confirma un usuario |
IsCurrentUser() | Comprueba si el usuario actual coincide con un nombre de usuario |
Login() | Registra el usuario en estableciendo un token en la cookie |
Logout() | Registra el usuario a cabo mediante la eliminación de la cookie símbolo |
RequireAuthenticatedUser() | Sale de la página si el usuario no es un usuario autenticado |
RequireRoles() | Sale de la página si el usuario no es una parte de las funciones especificadas |
RequireUser() | Sale de la página si el usuario no es el usuario especificado |
ResetPassword() | Cambia la contraseña de un usuario mediante un token |
UserExists() | Comprueba si existe un usuario dado |
Datos técnicos
Nombre | Valor |
---|---|
Clase | WebMatrix.WebData.WebSecurity |
espacio de nombres | WebMatrix.WebData |
Asamblea | WebMatrix.WebData.dll |
La inicialización de la base de datos WebSecurity
Debe crear o inicializar una base de datos WebSecurity antes de poder utilizar el objeto WebSecurity en el código.
En la raíz de su web, crear una página (or edit the page ) llamado _AppStart.cshtml.
Coloque el código siguiente en el archivo:
_AppStart.cshtml
@{
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile",
"UserId", "Email", true);
}
El código anterior se ejecutará cada vez que el sitio web (application) comienza. Se inicializa la base de datos WebSecurity.
"Usuarios" es el nombre de la base de datos WebSecurity (Users.sdf) .
"PerfilUsuario" es el nombre de la tabla de base de datos que contiene la información de perfil de usuario.
"UserId" es el nombre de la columna que contiene los ID de usuario (primary key) .
"Enviar" es el nombre de la columna que contiene los nombres de usuario.
El último parámetro verdad es un valor booleano que indica que el perfil de usuario y tablas de miembros deben ser creados de forma automática si no existen, de lo contrario falso.
Aunque true indica la creación automática de las tablas de bases de datos, la base de datos en sí no se creará automáticamente. Debe existir.
La base de datos WebSecurity
La tabla PerfilUsuario contiene un registro para cada usuario, con un ID de usuario (primary key) y el nombre del usuario (email) :
Identidad de usuario | |
---|---|
1 | [email protected] |
2 | [email protected] |
3 | [email protected] |
La tabla de afiliación contendrá información sobre los miembros de cuando fue creado el usuario y si (and when) el número de miembros se confirmó.
Al igual que este (some columns are not shown) :
Usuario Carné de identidad | Crear Fecha | Confirmación Simbólico | Es Confirmado | Último Contraseña Fracaso | Contraseña | Contraseña Cambio |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | NULO | Cierto | NULO | AFNQhWfy .... | 12.04.2012 16:12:17 |
Nota: Si desea ver todas las columnas y todo el contenido, abra la base de datos con WebMatrix y mirar dentro de cada tabla.
Configuración simple pertenencia
Es posible obtener errores utilizando el objeto WebSecurity, si su sitio no está configurado para utilizar las Páginas Web ASP.NET SimpleMembership sistema de afiliación.
Esto puede ocurrir si el servidor de un proveedor de alojamiento está configurado de manera diferente que el servidor local. Para solucionar este problema, agregue el elemento siguiente al archivo Web.config del sitio:
<appSettings>
<add key="enableSimpleMembership" value="true" />
</appSettings>