SqlMembershipProvider Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Gerir o armazenamento da informação de membros de uma aplicação ASP.NET numa base de dados SQL Server.
public ref class SqlMembershipProvider : System::Web::Security::MembershipProvider
public class SqlMembershipProvider : System.Web.Security.MembershipProvider
type SqlMembershipProvider = class
inherit MembershipProvider
Public Class SqlMembershipProvider
Inherits MembershipProvider
- Herança
Exemplos
O exemplo de código seguinte mostra o ficheiro Web.config para uma aplicação ASP.NET configurada para usar um SqlMembershipProvider.
<configuration>
<connectionStrings>
<add name="SqlServices" connectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
</connectionStrings>
<system.web>
<authentication mode="Forms" >
<forms loginUrl="login.aspx"
name=".ASPXFORMSAUTH" />
</authentication>
<authorization>
<deny users="?" />
</authorization>
<membership defaultProvider="SqlProvider"
userIsOnlineTimeWindow="15">
<providers>
<add
name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
applicationName="MyApplication"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
passwordAttemptWindow="10" />
</providers>
</membership>
</system.web>
</configuration>
Observações
Note
ASP.NET fornecedores de adesão foram substituídos pelo ASP.NET Identity. Recomendamos vivamente a atualização das aplicações para utilizarem a plataforma ASP.NET Identity em vez dos fornecedores de membros.
Esta classe é usada pelas classes Membership e MembershipUser para fornecer serviços de adesão a uma aplicação ASP.NET usando uma base de dados SQL Server. Não podes usar um SqlMembershipProvider sem SQL Server. Quando o seu computador tem SQL Server Express instalado com o nome da instância padrão e a instância do utilizador ativados, o objeto SqlMembershipProvider criará uma base de dados chamada aspnetdb no diretório App_Data da aplicação na primeira execução da aplicação.
Para criar manualmente a base de dados, execute o executável Aspnet_regsql.exe encontrado na pasta %systemroot%\Microsoft.NET\Framework\ versionNumber e especifique a opção -A m (por exemplo, aspnet_regsql.exe -A m). A base de dados criada chama-se Aspnetdb. Alternativamente, execute Aspnet_regsql.exe para abrir o modo de configuração da interface gráfica e escolha configurar todas as ASP.NET Funcionalidades.
Se o fornecedor de membros estiver configurado com uma cadeia de ligação que utilize segurança integrada, a conta do processo da aplicação ASP.NET deve ter direitos para se ligar à base de dados SQL Server.
O ficheiro Machine.config define uma instância SqlMembershipProvider por defeito chamada AspNetSqlMembershipProvider que se liga à instância SQL Server Express por defeito na máquina local. Pode usar esta instância do fornecedor se instalou SQL Server Express com o nome de instância predefinido, ou pode definir a sua própria instância no ficheiro Web.config da sua aplicação ASP.NET.
Se definires o atributo passwordCompatMode para Framework40, a aplicação pode usar as opções de hash e encriptação de adesão que foram adicionadas em ASP.NET 4. No entanto, se o atributo passwordCompatMode for definido para Framework20, apenas as opções de hash e encriptação dos SP1 ASP.NET 2.0, ASP.NET 3.5 e ASP.NET 3.5 podem ser usadas. O valor predefinido é Framework20. Para obter mais informações, veja MembershipPasswordCompatibilityMode.
Construtores
| Name | Description |
|---|---|
| SqlMembershipProvider() |
Inicializa uma nova instância da SqlMembershipProvider classe. |
Propriedades
| Name | Description |
|---|---|
| ApplicationName |
Obtém ou define o nome da aplicação para armazenar e recuperar informações de membro. |
| Description |
Recebe uma descrição breve e amigável, adequada para exibição em ferramentas administrativas ou outras interfaces de utilizador (UIs). (Herdado de ProviderBase) |
| EnablePasswordReset |
Recebe um valor que indica se o fornecedor de membros do SQL Server está configurado para permitir que os utilizadores redefinam as suas palavras-passe. |
| EnablePasswordRetrieval |
Recebe um valor que indica se o fornecedor de adesão ao SQL Server está configurado para permitir que os utilizadores recuperem as suas palavras-passe. |
| MaxInvalidPasswordAttempts |
Obtém o número de tentativas inválidas de palavra-passe ou de resposta por palavra-passe permitidas antes de o utilizador de subscrição ficar bloqueado. |
| MinRequiredNonAlphanumericCharacters |
Obtém o número mínimo de caracteres especiais que devem estar presentes numa palavra-passe válida. |
| MinRequiredPasswordLength |
Obtém o comprimento mínimo necessário para uma palavra-passe. |
| Name |
Recebe o nome amigável usado para se referir ao fornecedor durante a configuração. (Herdado de ProviderBase) |
| PasswordAttemptWindow |
Obtém a janela temporal entre a qual tentativas consecutivas falhadas de fornecer uma palavra-passe válida ou respostas por palavra-passe são acompanhadas. |
| PasswordFormat |
Recebe um valor que indica o formato para armazenar palavras-passe na base de dados de membros do SQL Server. |
| PasswordStrengthRegularExpression |
Obtém a expressão regular usada para avaliar uma palavra-passe. |
| RequiresQuestionAndAnswer |
Recebe um valor que indica se o fornecedor de membros do SQL Server está configurado para exigir que o utilizador responda a uma pergunta de palavra-passe para reposição e recuperação de palavra-passe. |
| RequiresUniqueEmail |
Recebe um valor que indica se o fornecedor de adesão ao SQL Server está configurado para exigir um endereço de email único para cada nome de utilizador. |
Métodos
| Name | Description |
|---|---|
| ChangePassword(String, String, String) |
Modifica a palavra-passe do utilizador. |
| ChangePasswordQuestionAndAnswer(String, String, String, String) |
Atualiza a pergunta e resposta da palavra-passe para um utilizador na base de dados de membros do SQL Server. |
| CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) |
Adiciona um novo utilizador à base de dados de membros do SQL Server. |
| DecryptPassword(Byte[]) |
Desencripta uma palavra-passe encriptada. (Herdado de MembershipProvider) |
| DeleteUser(String, Boolean) |
Remove a informação de adesão do utilizador da base de dados de membros do SQL Server. |
| EncryptPassword(Byte[], MembershipPasswordCompatibilityMode) |
Encripta a palavra-passe especificada usando o modo de compatibilidade de palavra-passe especificado. (Herdado de MembershipProvider) |
| EncryptPassword(Byte[]) |
Encripta uma palavra-passe. (Herdado de MembershipProvider) |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| FindUsersByEmail(String, Int32, Int32, Int32) |
Devolve uma coleção de utilizadores de membros para a qual o campo de endereço de email contém o endereço de email especificado. |
| FindUsersByName(String, Int32, Int32, Int32) |
Obtém uma coleção de utilizadores de membros onde o nome de utilizador contém o nome de utilizador especificado para corresponder. |
| GeneratePassword() |
Gera uma palavra-passe aleatória com pelo menos 14 caracteres. |
| GetAllUsers(Int32, Int32, Int32) |
Obtém uma coleção de todos os utilizadores na base de dados de membros do SQL Server. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetNumberOfUsersOnline() |
Devolve o número de utilizadores que atualmente acedem à aplicação. |
| GetPassword(String, String) |
Devolve a palavra-passe do nome de utilizador especificado da base de dados de membros do SQL Server. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| GetUser(Object, Boolean) |
Obtém a informação da fonte de dados do utilizador de membros associada ao identificador único especificado e atualiza a data/hora da última atividade para o utilizador, se especificado. |
| GetUser(String, Boolean) |
Devolve informações da base de dados de membros do SQL Server para um utilizador e fornece uma opção para atualizar a data/hora da última atividade para o utilizador. |
| GetUserNameByEmail(String) |
Obtém o nome de utilizador associado ao endereço de email especificado. |
| Initialize(String, NameValueCollection) |
Inicializa o fornecedor de membros do SQL Server com os valores de propriedade especificados no ficheiro de configuração da aplicação ASP.NET. Este método não foi pensado para ser usado diretamente a partir do seu código. |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| OnValidatingPassword(ValidatePasswordEventArgs) |
Levanta o ValidatingPassword evento se um gestor de eventos tiver sido definido. (Herdado de MembershipProvider) |
| ResetPassword(String, String) |
Redefine a palavra-passe de um utilizador para uma nova palavra-passe gerada automaticamente. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| UnlockUser(String) |
Elimina o estado de bloqueio do utilizador para que o utilizador de membro possa ser validado. |
| UpdateUser(MembershipUser) |
Atualiza informações sobre um utilizador na base de dados de membros do SQL Server. |
| ValidateUser(String, String) |
Verifica se o nome de utilizador e a palavra-passe especificados existem na base de dados de membros do SQL Server. |
evento
| Name | Description |
|---|---|
| ValidatingPassword |
Ocorre quando um utilizador é criado, uma palavra-passe é alterada ou uma palavra-passe é redefinida. (Herdado de MembershipProvider) |