ClientFormsAuthenticationMembershipProvider Classe

Definição

Habilita a autenticação de formulários com serviços de aplicativo cliente.

public ref class ClientFormsAuthenticationMembershipProvider : System::Web::Security::MembershipProvider
public class ClientFormsAuthenticationMembershipProvider : System.Web.Security.MembershipProvider
type ClientFormsAuthenticationMembershipProvider = class
    inherit MembershipProvider
Public Class ClientFormsAuthenticationMembershipProvider
Inherits MembershipProvider
Herança
ClientFormsAuthenticationMembershipProvider

Exemplos

O código de exemplo a seguir demonstra como usar esse método para validar o usuário usando uma implementação de IClientFormsAuthenticationCredentialsProvider.

private bool ValidateUsingCredentialsProvider()
{
    bool isAuthorized = false;
    try
    {
        ClientFormsAuthenticationMembershipProvider authProvider =
            System.Web.Security.Membership.Provider as
            ClientFormsAuthenticationMembershipProvider;

        // Call ValidateUser with empty strings in order to display the 
        // login dialog box configured as a credentials provider.
        isAuthorized = authProvider.ValidateUser(String.Empty, String.Empty);
    }
    catch (System.Net.WebException)
    {
        MessageBox.Show("Unable to access the authentication service.",
            "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
    }
    if (!isAuthorized)
    {
        MessageBox.Show("Unable to authenticate.", "Not logged in", 
            MessageBoxButtons.OK, MessageBoxIcon.Error);
        Application.Exit();
    }
    return isAuthorized;
}
Private Function ValidateUsingCredentialsProvider() As Boolean

    Dim isAuthorized As Boolean = False

    Try

        Dim authProvider As ClientFormsAuthenticationMembershipProvider = _
            CType(System.Web.Security.Membership.Provider,  _
            ClientFormsAuthenticationMembershipProvider)

        ' Call ValidateUser with empty strings in order to display the 
        ' login dialog box configured as a credentials provider.
        isAuthorized = authProvider.ValidateUser(String.Empty, String.Empty)

    Catch ex As System.Net.WebException

        MessageBox.Show("Unable to access the authentication service.", _
            "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning)

    End Try

    If Not isAuthorized Then

        MessageBox.Show("Unable to authenticate.", "Not logged in", _
            MessageBoxButtons.OK, MessageBoxIcon.Error)
        Application.Exit()

    End If

    Return isAuthorized

End Function

Comentários

Você pode usar os serviços de aplicativo cliente para validar os usuários usando a autenticação de formulários. Para habilitar a autenticação de formulários, configure seu aplicativo para usar a classe ClientFormsAuthenticationMembershipProvider.

Após a configuração, você pode validar os usuários chamando o método staticMembership.ValidateUser, que chama internamente o método ClientFormsAuthenticationMembershipProvider.ValidateUser(String, String).

A autenticação de formulários requer que o usuário especifique suas credenciais por meio de controles de logon fornecidos pelo aplicativo. Você pode recuperar as credenciais e passá-las para o método Membership.ValidateUser. Você também pode passar cadeias de caracteres vazias ou null para usar um provedor de credenciais. Um provedor de credenciais é uma implementação IClientFormsAuthenticationCredentialsProvider especificada no arquivo de configuração do aplicativo. Normalmente, você implementará o método IClientFormsAuthenticationCredentialsProvider.GetCredentials para exibir uma caixa de diálogo de logon e retornar um objeto ClientFormsAuthenticationCredentials preenchido. O uso de um provedor de credenciais permite que você compartilhe uma única caixa de diálogo de logon entre vários aplicativos.

O método ClientFormsAuthenticationMembershipProvider.ValidateUser autentica os usuários por meio do serviço de logon indicado pela propriedade ServiceUri. O valor da propriedade ServiceUri normalmente é recuperado do arquivo de configuração do aplicativo, juntamente com outros valores de configuração.

Se o usuário for autenticado com êxito, o provedor de serviços definirá a propriedade staticThread.CurrentPrincipal como um novo objeto ClientRolePrincipal que contém um novo objeto ClientFormsIdentity que contém as informações do usuário. Se um ClientRoleProvider estiver configurado para seu aplicativo, você poderá usar o objeto ClientRolePrincipal para recuperar informações de função de usuário do serviço de funções.

Você pode recuperar uma referência à instância de ClientFormsAuthenticationMembershipProvider atual por meio da propriedade staticMembership.Provider. Você pode usar a referência do provedor de associação para chamar o método ClientFormsAuthenticationMembershipProvider.ValidateUser diretamente. Além disso, você precisará da referência do provedor de associação para chamar o método Logout, que não está disponível na classe base MembershipProvider.

Você não pode usar a classe ClientFormsAuthenticationMembershipProvider para criar, excluir ou modificar informações de associação. Para criar, excluir ou modificar usuários, você deve alterar a configuração do serviço de logon no servidor.

Construtores

ClientFormsAuthenticationMembershipProvider()

Inicializa uma nova instância da classe ClientFormsAuthenticationMembershipProvider.

Propriedades

ApplicationName

Essa propriedade não é usada por essa classe.

Description

Obtém uma descrição breve e amigável adequada para exibição em ferramentas administrativas ou em outras interfaces de usuário (UIs).

(Herdado de ProviderBase)
EnablePasswordReset

Essa propriedade não é usada por essa classe.

EnablePasswordRetrieval

Essa propriedade não é usada por essa classe.

MaxInvalidPasswordAttempts

Essa propriedade não é usada por essa classe.

MinRequiredNonAlphanumericCharacters

Essa propriedade não é usada por essa classe.

MinRequiredPasswordLength

Essa propriedade não é usada por essa classe.

Name

Obtém o nome amigável usado para se referir ao provedor durante a configuração.

(Herdado de ProviderBase)
PasswordAttemptWindow

Essa propriedade não é usada por essa classe.

PasswordFormat

Essa propriedade não é usada por essa classe.

PasswordStrengthRegularExpression

Essa propriedade não é usada por essa classe.

RequiresQuestionAndAnswer

Essa propriedade não é usada por essa classe.

RequiresUniqueEmail

Essa propriedade não é usada por essa classe.

ServiceUri

Obtém ou define o URI do serviço de autenticação.

Métodos

ChangePassword(String, String, String)

Esse método não é usado por essa classe.

ChangePasswordQuestionAndAnswer(String, String, String, String)

Esse método não é usado por essa classe.

CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus)

Esse método não é usado por essa classe.

DecryptPassword(Byte[])

Descriptografa uma senha criptografada.

(Herdado de MembershipProvider)
DeleteUser(String, Boolean)

Esse método não é usado por essa classe.

EncryptPassword(Byte[])

Criptografa uma senha.

(Herdado de MembershipProvider)
EncryptPassword(Byte[], MembershipPasswordCompatibilityMode)

Criptografa a senha especificada usando o modo de compatibilidade de senha especificado.

(Herdado de MembershipProvider)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
FindUsersByEmail(String, Int32, Int32, Int32)

Esse método não é usado por essa classe.

FindUsersByName(String, Int32, Int32, Int32)

Esse método não é usado por essa classe.

GetAllUsers(Int32, Int32, Int32)

Esse método não é usado por essa classe.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetNumberOfUsersOnline()

Esse método não é usado por essa classe.

GetPassword(String, String)

Esse método não é usado por essa classe.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetUser(Object, Boolean)

Esse método não é usado por essa classe.

GetUser(String, Boolean)

Esse método não é usado por essa classe.

GetUserNameByEmail(String)

Esse método não é usado por essa classe.

Initialize(String, NameValueCollection)

Inicializa o provedor.

Logout()

Faz logon do usuário.

MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
OnValidatingPassword(ValidatePasswordEventArgs)

Aciona o evento ValidatingPassword se um manipulador de eventos tiver sido definido.

(Herdado de MembershipProvider)
ResetPassword(String, String)

Esse método não é usado por essa classe.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
UnlockUser(String)

Esse método não é usado por essa classe.

UpdateUser(MembershipUser)

Esse método não é usado por essa classe.

ValidateUser(String, String)

Autentica um usuário usando o nome de usuário e a senha especificados.

ValidateUser(String, String, Boolean)

Autentica um usuário usando o nome de usuário e a senha especificados, opcionalmente armazenando um hash da senha no cache de dados local.

ValidateUser(String, String, String)

Autentica um usuário no URI de serviço especificado usando o nome de usuário e a senha especificados.

Eventos

UserValidated

Ocorre quando o usuário é validado.

ValidatingPassword

Ocorre quando um usuário é criado, uma senha é alterada ou uma senha é redefinida.

(Herdado de MembershipProvider)

Aplica-se a

Confira também