Share via


ClientFormsAuthenticationMembershipProvider.ValidateUser Método

Definição

Autentica um usuário usando as credenciais especificadas.

Sobrecargas

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.

ValidateUser(String, String)

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

public:
 override bool ValidateUser(System::String ^ username, System::String ^ password);
public override bool ValidateUser (string username, string password);
override this.ValidateUser : string * string -> bool
Public Overrides Function ValidateUser (username As String, password As String) As Boolean

Parâmetros

username
String

O nome do usuário a autenticar, ou então Empty ou null para recuperar credenciais da implementação de IClientFormsAuthenticationCredentialsProvider que este aplicativo está configurado para usar.

password
String

A senha do usuário a autenticar.

Retornos

true se o usuário foi autenticado; caso contrário, false.

Exceções

O valor da propriedade IsOffline é false e o provedor de associação não pode acessar o serviço de autenticação.

Exemplos

O código de exemplo a seguir demonstra como usar esse método para validar o usuário usando uma implementação IClientFormsAuthenticationCredentialsProvider . Este exemplo exige que você configure seu aplicativo para usar um provedor de credenciais.

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 validar os usuários, você normalmente chamará o staticMembership.ValidateUser método , que chama internamente o ClientFormsAuthenticationMembershipProvider.ValidateUser método . Como alternativa, você pode chamar esse método diretamente, conforme mostrado na seção Exemplo.

A autenticação de formulários exige 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 Membership.ValidateUser método . Você também pode passar cadeias de caracteres vazias ou null usar um provedor de credenciais.

Confira também

Aplica-se a

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.

public:
 bool ValidateUser(System::String ^ username, System::String ^ password, bool rememberMe);
public bool ValidateUser (string username, string password, bool rememberMe);
override this.ValidateUser : string * string * bool -> bool
Public Function ValidateUser (username As String, password As String, rememberMe As Boolean) As Boolean

Parâmetros

username
String

O nome do usuário a autenticar.

password
String

A senha do usuário a autenticar.

rememberMe
Boolean

true para armazenar um hash da senha no cache de dados local para uso offline e para reautenticação automática quando o cookie de autenticação do usuário expira; false para desabilitar o logon offline ou exigir que os usuários se autentiquem novamente quando o cookie expira.

Retornos

true se o usuário foi autenticado; caso contrário, false.

Exceções

O valor da propriedade IsOffline é false e o provedor de associação não pode acessar o serviço de autenticação.

Exemplos

O código de exemplo a seguir demonstra como usar esse método para validar o usuário usando controles de logon no código do aplicativo. Este exemplo requer um controle chamado usernameTextBox, um TextBox controle chamado passwordTextBoxe um CheckBox controle chamado rememberMeCheckBox.TextBox

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

        // Call ValidateUser with credentials retrieved from login controls.
        isAuthorized = authProvider.ValidateUser(usernameTextBox.Text,
            passwordTextBox.Text, rememberMeCheckBox.Checked);
    }
    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 ValidateUsingLoginControls() As Boolean

    Dim isAuthorized As Boolean = False

    Try

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

        ' Call ValidateUser with credentials retrieved from login controls.
        isAuthorized = authProvider.ValidateUser(usernameTextBox.Text, _
            passwordTextBox.Text, rememberMeCheckBox.Checked)

    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 validar os usuários, você normalmente chamará o staticMembership.ValidateUser método , que chama internamente o ClientFormsAuthenticationMembershipProvider.ValidateUser(String, String) método . Como alternativa, você pode chamar o ClientFormsAuthenticationMembershipProvider.ValidateUser método diretamente. Você pode chamar essa sobrecarga para passar um rememberMe valor além dos username valores e password .

Confira também

Aplica-se a

ValidateUser(String, String, String)

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

public:
 static bool ValidateUser(System::String ^ username, System::String ^ password, System::String ^ serviceUri);
public static bool ValidateUser (string username, string password, string serviceUri);
static member ValidateUser : string * string * string -> bool
Public Shared Function ValidateUser (username As String, password As String, serviceUri As String) As Boolean

Parâmetros

username
String

O nome do usuário a autenticar.

password
String

A senha do usuário a autenticar.

serviceUri
String

O URI do serviço de autenticação a usar.

Retornos

true se o usuário foi autenticado; caso contrário, false.

Exceções

O valor da propriedade IsOffline é false e o provedor de associação não pode acessar o serviço de autenticação.

Exemplos

O código de exemplo a seguir demonstra como usar esse método para validar o usuário por meio de um serviço de autenticação em um local especificado. As credenciais do usuário são recuperadas dos controles de logon no código do aplicativo. Este exemplo requer um TextBox controle chamado usernameTextBox e um TextBox controle chamado passwordTextBox.

private bool ValidateUsingServiceUri(String serviceUri)
{
    bool isAuthorized = false;
    try
    {
        // Call the static overload of ValidateUser. Specify credentials 
        // retrieved from login controls and the service location.
        isAuthorized = 
            ClientFormsAuthenticationMembershipProvider.ValidateUser(
            usernameTextBox.Text, passwordTextBox.Text, serviceUri);
    }
    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 ValidateUsingServiceUri(ByVal serviceUri As String) As Boolean

    Dim isAuthorized As Boolean = False

    Try

        ' Call the Shared overload of ValidateUser. Specify credentials 
        ' retrieved from login controls and the service location.
        isAuthorized = _
            ClientFormsAuthenticationMembershipProvider.ValidateUser( _
            usernameTextBox.Text, passwordTextBox.Text, serviceUri)

    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 validar os usuários, você normalmente chamará o staticMembership.ValidateUser método , que chama internamente o ClientFormsAuthenticationMembershipProvider.ValidateUser método . Como alternativa, você pode chamar o ClientFormsAuthenticationMembershipProvider.ValidateUser método diretamente. Você pode chamar essa sobrecarga para acessar um serviço de autenticação no local especificado pelo serviceUri parâmetro . Usar essa sobrecarga é uma alternativa para definir a ServiceUri propriedade e chamar a ValidateUser(String, String) sobrecarga.

Confira também

Aplica-se a