O melhor tutorial Manual do ASP.NET Web Pages WebSecurity Referência em 2024. Neste tutorial você pode aprender descrição,WebSecurity objeto de referência - Propriedade,WebSecurity objeto de referência - Métodos,dados técnicos,WebSecurity inicialização do banco de dados,_AppStart.cshtml,banco de dados WebSecurity,membro configuração simples,
Páginas da Web ASP.NET WebSecurity objeto fornece a segurança do aplicativo e autenticação.
Por WebSecurity objeto, você pode criar contas de usuário, logon e logoff do usuário, redefinir ou alterar sua senha, e mais funções relacionadas à segurança.
属性 | 描述 |
---|---|
CurrentUserId | 获取当前登录用户的 ID。 |
CurrentUserName | 获取当前登录用户的名称。 |
HasUserId | 如果当前有用户 ID,则返回 true。 |
IsAuthenticated | 如果当前用户是登录的,则返回 true。 |
方法 | 描述 |
---|---|
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() | 检查指定的用户是否存在。 |
名称 | 值 |
---|---|
Class | WebMatrix.WebData.WebSecurity |
Namespace | WebMatrix.WebData |
Assembly | WebMatrix.WebData.dll |
Se você quiser usar objetos WebSecurity no seu código, você deve primeiro criar ou inicializar banco de dados WebSecurity.
No seu diretório raiz da Web, crie um arquivo chamado _AppStart.cshtml página (se ele já existe, você vai editar diretamente da página).
Copie o seguinte código para o arquivo:
O código acima será executado em cada local (aplicativo) é iniciado. É a base de dados inicializa WebSecurity.
"Usuários" são de banco de dados WebSecurity (Users.sdf) nome.
"UserProfile" é o nome da tabela de banco de dados que contém informações de configuração do usuário.
"UserId" que contém o ID do usuário (chave primária) o nome da coluna.
"E-mail" é o nome de uma coluna de nome de usuário.
Finalmente, um verdadeiro parâmetro é um valor booleano que indica se não existirem as tabelas de configuração de usuário e tabelas de membros, ele irá criar automaticamente uma tabela. Se você não quiser criar automaticamente uma tabela, você deve definir o parâmetro para false.
Embora verdadeiro para criar automaticamente as tabelas de banco de dados, mas o banco de dados não será criado automaticamente. Assim, o banco de dados deve existir. |
tabela UserProfile criado para cada usuário para salvar um registro, o ID do usuário (chave primária) e nome de usuário (e-mail):
UserId | |
---|---|
1 | john@johnson.net |
2 | peter@peterson.com |
3 | lars@larson.eut |
tabela Membership contém a informação da sociedade, como quando o usuário é criado, se o membro foi certificado certificação membro o tempo, e assim por diante.
Tal como mostrado abaixo (alguns dos colunas não são apresentados):
User Id |
Create Date |
Confirmation Token |
Is Confirmed |
Last Password Failure |
Password | Password Change |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | NULL | True | NULL | AFNQhWfyptpt | 12.04.2012 16:12:17 |
Nota: Se você quiser ver todas as colunas e o conteúdo, abra o banco de dados, olhar para cada mesa no interior.
Quando você usa objetos WebSecurity, se o site não está configurado para usar ASP.NET Web Pages Membro SimpleMembership sistema, você pode ser dada.
Se você configurar o provedor de hospedagem de servidor e configuração do servidor local é diferente, ele também pode ser dada. Para resolver este problema, adicione o seguinte elemento no arquivo Web.config no site: