Los últimos tutoriales de desarrollo web
 

ASP.NET Páginas Web - WebSecurity Object


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 Email
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>