Latest web development tutorials

Manual de páginas Web ASP.NET WebSecurity Referencia

descripción

Páginas Web ASP.NET WebSecurity objeto proporciona la seguridad de aplicaciones y autenticación.

Por WebSecurity objeto, puede crear cuentas de usuario, inicio de sesión de usuario y cierre de sesión, restablecer o cambiar la contraseña, y más funciones relacionadas con la seguridad.


WebSecurity objeto de referencia - Propiedad

属性 描述
CurrentUserId 获取当前登录用户的 ID。
CurrentUserName 获取当前登录用户的名称。
HasUserId 如果当前有用户 ID,则返回 true。
IsAuthenticated 如果当前用户是登录的,则返回 true。

WebSecurity objeto de referencia - Métodos

方法 描述
ChangePassword() 为指定的用户更改密码。
ConfirmAccount() 使用帐户确认令牌确认帐户。
CreateAccount() 创建一个新的用户帐户。
CreateUserAndAccount() 创建一个新的用户帐户。
GeneratePasswordResetToken() 生成一个密码重置令牌,可以在电子邮件中发送给用户以便用户可以重设密码。
GetCreateDate() 获取指定会员创建的时间。
GetPasswordChangeDate() 获取密码变更的日期和时间。
GetUserId() 根据用户名称获取用户 ID。
InitializeDatabaseConnection() 初始化 WebSecurity 系统(数据库)。
IsConfirmed() 检查用户是否已被确认。如果已确认,则返回 true。(例如,可通过电子邮件进行确认。)
IsCurrentUser() 检查当前用户的名称是否与指定用户名匹配。如果匹配,则返回 true。
Login() 设置身份验证令牌,登录用户。
Logout() 移除身份验证令牌,注销用户。
RequireAuthenticatedUser() 如果用户未通过身份验证,则设置 HTTP 状态为 401(未经授权)。
RequireRoles() 如果当前用户不是指定角色的成员,则设置 HTTP 状态为 401(未经授权)。
RequireUser() 如果当前用户不是指定用户名的用户,则设置 HTTP 状态为 401(未经授权)。
ResetPassword() 如果密码重置令牌是有效的,改变用户的密码为新密码。
UserExists() 检查指定的用户是否存在。


datos técnicos

名称
Class WebMatrix.WebData.WebSecurity
Namespace WebMatrix.WebData
Assembly WebMatrix.WebData.dll


WebSecurity base de datos de inicialización

Si desea utilizar objetos WebSecurity en su código, primero debe crear o inicializar la base de datos WebSecurity.

En el directorio raíz Web, cree un archivo llamado _AppStart.cshtml página (si ya existe, se le editar directamente la página).

Copia el siguiente código al archivo:

_AppStart.cshtml

@{
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", true);
}

El código anterior se ejecutará en cada sitio (aplicación) se inicia. Se inicializa la base de datos WebSecurity.

"Usuarios" son la base de datos WebSecurity (Users.sdf) nombre.

"UserProfile" es el nombre de la tabla de base de datos que contiene información de configuración del usuario.

"UserId" que contiene el ID de usuario (clave principal) el nombre de la columna.

"Enviar" es el nombre de una columna de nombre de usuario.

Por último, un verdadero parámetro es un valor booleano que indica si no se dan las tablas de configuración de usuario y las tablas de miembros, se creará automáticamente una tabla. Si no desea crear automáticamente una tabla, debe establecer el parámetro en false.

lámpara Aunque fiel a crear automáticamente las tablas de base de datos, pero la base de datos no se creará automáticamente. Por lo que la base de datos debe existir.


base de datos de WebSecurity

tabla UserProfile crea para cada usuario guardar un registro, el identificador de usuario (clave principal) y el nombre de usuario (correo electrónico):

UserId Email
1 [email protected]
2 [email protected]
3 [email protected]

mesa de membresía contiene información de pertenencia, por ejemplo, cuando se crea el usuario, si el usuario ha sido certificado de certificación miembro de a qué hora, y así sucesivamente.

Como se muestra a continuación (algunas de las columnas no se muestran):

User
Id
Create
Date
Confirmation
Token
Is
Confirmed
Last
Password
Failure
Password Password
Change
1 12.04.2012 16:12:17 NULL True NULL AFNQhWfy.... 12.04.2012 16:12:17

Nota: Si desea ver todas las columnas y el contenido, abra la base de datos, buscar en cada mesa dentro.


miembro de una configuración sencilla

Cuando se utilizan objetos WebSecurity, si su sitio no está configurado para utilizar páginas Web ASP.NET miembro SimpleMembership sistema, se le puede dar.

Si configura el proveedor de servidor de alojamiento y la configuración del servidor local es diferente, también se puede dar. Para resolver este problema, agregue el elemento siguiente en el archivo Web.config en el sitio web:

<appSettings>
<add key="enableSimpleMembership" value="true" />
</appSettings>