ClientFormsAuthenticationMembershipProvider Classe

Definição

Habilita a autenticação de formulários com serviços de aplicativos 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 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 ClientFormsAuthenticationMembershipProvider classe .

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

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

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

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

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

Você não pode usar a ClientFormsAuthenticationMembershipProvider classe 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 breve descrição amigável adequada para exibição em ferramentas administrativas ou outras IUs (interfaces do usuário).

(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 referir-se 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)

Este método não é usado por esta classe.

ChangePasswordQuestionAndAnswer(String, String, String, String)

Este método não é usado por esta classe.

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

Este método não é usado por esta classe.

DecryptPassword(Byte[])

Descriptografa uma senha criptografada.

(Herdado de MembershipProvider)
DeleteUser(String, Boolean)

Este método não é usado por esta 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)

Este método não é usado por esta classe.

FindUsersByName(String, Int32, Int32, Int32)

Este método não é usado por esta classe.

GetAllUsers(Int32, Int32, Int32)

Este método não é usado por esta classe.

GetHashCode()

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

(Herdado de Object)
GetNumberOfUsersOnline()

Este método não é usado por esta classe.

GetPassword(String, String)

Este método não é usado por esta classe.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetUser(Object, Boolean)

Este método não é usado por esta classe.

GetUser(String, Boolean)

Este método não é usado por esta classe.

GetUserNameByEmail(String)

Este método não é usado por esta classe.

Initialize(String, NameValueCollection)

Inicializa o provedor.

Logout()

Faz logoff do usuário.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnValidatingPassword(ValidatePasswordEventArgs)

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

(Herdado de MembershipProvider)
ResetPassword(String, String)

Este método não é usado por esta classe.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
UnlockUser(String)

Este método não é usado por esta classe.

UpdateUser(MembershipUser)

Este método não é usado por esta 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, armazenando opcionalmente um hash da senha no cache de dados local.

ValidateUser(String, String, String)

Autentica um usuário no URI do 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