ASP.NET Web Pages - Objeto WebSecurity
- Página Anterior Classe do WebPages
- Próxima Página Banco de Dados do WebPages
Descrição
O objeto WebSecurity fornece segurança e autenticação para aplicativos ASP.NET Web Pages.
Através do objeto WebSecurity, você pode criar contas de usuário, fazer login e logout, redefinir ou mudar senhas, etc.
Manual de Referência do Objeto WebSecurity - Atributos
Atributo | Descrição |
---|---|
CurrentUserId | Obtém o ID do usuário atual. |
CurrentUserName | Obtém o nome do usuário atual. |
HasUserId | Obtém o valor que indica se o usuário atual possui ID de usuário. Se sim, retorna true. |
IsAuthenticated | Obtém o estado de autenticação do usuário atual. |
Manual de Referência do Objeto WebSecurity - Métodos
Atributo | Descrição |
---|---|
ChangePassword() | Muda a senha do usuário. |
ConfirmAccount() | Confirma a validade da conta e ativa a conta. |
CreateAccount() | Cria uma nova conta de usuário. |
CreateUserAndAccount() | Cria uma nova conta de usuário. |
GeneratePasswordResetToken() | Gera um token de redefinição de senha que pode ser enviado por e-mail ao usuário. |
GetCreateDate() | Retorna a data e hora de criação da conta de membros especificada. |
GetPasswordChangeDate() | Retorna a data e hora da última mudança de senha da conta de membros especificada. |
GetPasswordFailures SinceLastSuccess() |
Retorna a quantidade de tentativas de login falhadas com a senha incorreta desde o último login bem-sucedido ou criação da conta de membros. |
GetUserId() | Retorna o ID do usuário com base no nome de usuário especificado. |
GetUserIdFrom PasswordResetToken () |
Retorna o ID do usuário a partir do token de redefinição de senha. |
InitializeDatabaseConnection() | Inicializa o sistema de associação conectando-se ao banco de dados que contém informações do usuário. |
IsAccountLockedOut() | Indica se a conta de associação especificada foi bloqueada devido a muitas tentativas de senha falhadas. |
IsConfirmed() | Retorna um valor que indica se o usuário já foi confirmado. |
IsCurrentUser() | Retorna um valor que indica se o nome de usuário do usuário logado coincide com o nome de usuário especificado. |
Login() | Login do usuário. |
Logout() | Desconectar o usuário. |
RequireAuthenticatedUser() | Se o usuário não estiver autenticado, configure o código de status HTTP para 401 (não autorizado). |
RequireRoles() | Se o usuário atual não pertencer ao papel especificado, configure o código de status HTTP para 401. |
RequireUser() | Se o usuário atual não for o usuário especificado, configure o código de status HTTP para 401. |
ResetPassword() | Restabelecer a senha usando o token de redefinição de senha. |
UserExists() | Verificar se o usuário existe. |
Technical Data
Name | Value |
---|---|
Class | WebMatrix.WebData.WebSecurity |
Namespace | WebMatrix.WebData |
Assembly | WebMatrix.WebData.dll |
Inicializar o banco de dados WebSecurity
Antes de usar o objeto WebSecurity, você deve criar ou inicializar o banco de dados WebSecurity.
No diretório de arquivos web, crie ou edite a página _AppStart.cshtml.
Escreva o seguinte código neste arquivo:
_AppStart.cshtml
@{ WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", true); }
O site executa o código acima toda vez que é iniciado. Ele inicializa o banco de dados WebSecurity.
"Users" é o nome do banco de dados WebSecurity. (Users.sdf)
"UserProfile" é o nome da tabela de banco de dados que contém informações de configuração do usuário.
"UserId" é o nome da coluna que contém o ID do usuário (chave primária).
"Email" é o nome da coluna que contém o nome do usuário.
O último parâmetro true é um valor lógico que indica se devem ser criadas as tabelas de perfil de usuário e associação (se não existirem), caso contrário false.
Dica: Embora true indique a criação automática das tabelas do banco de dados, o banco de dados em si não será criado automaticamente. Ele deve existir.
Banco de Dados WebSecurity
Cada registro na tabela UserProfile representa um usuário, incluindo o ID do usuário (chave primária) e o nome do usuário (email):
UserId | |
---|---|
1 | john@johnson.net |
2 | peter@peterson.com |
3 | lars@larson.eut |
A tabela Membership contém informações de associação, como quando o usuário criou e se confirmou a associação (e quando).
Tal como neste exemplo (algumas colunas não são listadas):
UserId | Data de Criação | Confirmação Token |
Se Confirmação |
Última Erro de Senha |
Senha | Alteração de Senha |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | NULL | True | NULL | AFNQhWfy.... | 12.04.2012 16:12:17 |
Notas:Se você desejar ver todas as colunas e todos os conteúdos, abra o banco de dados através do WebMatrix e veja cada tabela.
Configuração Simples de Associados
Se o seu site não estiver configurado para usar o sistema de associação ASP.NET Web Pages SimpleMembership, pode ocorrer um erro ao usar o objeto WebSecurity.
Se a configuração do provedor de hospedagem for diferente da do seu servidor local, ocorrerá um erro. Para resolver este problema, adicione o seguinte elemento ao arquivo Web.config do site:
<appSettings> <add key="enableSimpleMembership" value="true" /> </appSettings>
- Página Anterior Classe do WebPages
- Próxima Página Banco de Dados do WebPages