Share via


ClientFormsAuthenticationMembershipProvider.ValidateUser Método

Definición

Autentica a un usuario con las credenciales especificadas.

Sobrecargas

ValidateUser(String, String)

Autentica a un usuario con el nombre de usuario y contraseña especificados.

ValidateUser(String, String, Boolean)

Autentica a un usuario con el nombre de usuario y contraseña especificados y almacena opcionalmente un hash de la contraseña en la caché de datos local.

ValidateUser(String, String, String)

Autentica a un usuario en el URI del servicio especificado mediante el nombre de usuario y contraseña especificados.

ValidateUser(String, String)

Autentica a un usuario con el nombre de usuario y contraseña 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

El nombre del usuario que se va a autenticar o Empty o null para recuperar las credenciales de la implementación de IClientFormsAuthenticationCredentialsProvider configurada para usarla en la aplicación.

password
String

Contraseña del usuario que se va a autenticar.

Devoluciones

true si se ha autenticado al usuario; en caso contrario, false.

Excepciones

El valor de la propiedad IsOffline es false y el proveedor de pertenencia no puede tener acceso al servicio de autenticación.

Ejemplos

En el código de ejemplo siguiente se muestra cómo usar este método para validar al usuario mediante una IClientFormsAuthenticationCredentialsProvider implementación. Este ejemplo requiere que configure la aplicación para usar un proveedor de credenciales.

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

Comentarios

Puede usar los servicios de aplicación cliente para validar a los usuarios mediante la autenticación de formularios. Para validar a los usuarios, normalmente llamará al staticMembership.ValidateUser método , que llama internamente al ClientFormsAuthenticationMembershipProvider.ValidateUser método . Como alternativa, puede llamar directamente a este método, como se muestra en la sección Ejemplo.

La autenticación de formularios requiere que el usuario especifique sus credenciales a través de los controles de inicio de sesión proporcionados por la aplicación. Puede recuperar las credenciales y pasarlas al Membership.ValidateUser método . También puede pasar cadenas vacías o null usar un proveedor de credenciales.

Consulte también

Se aplica a

ValidateUser(String, String, Boolean)

Autentica a un usuario con el nombre de usuario y contraseña especificados y almacena opcionalmente un hash de la contraseña en la caché de datos 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

Nombre del usuario que se va a autenticar.

password
String

Contraseña del usuario que se va a autenticar.

rememberMe
Boolean

true para almacenar un hash de la contraseña en la caché de datos local para el uso sin conexión y para volver a autenticar automáticamente al usuario cuando la cookie de autenticación de usuario expire; false para deshabilitar el inicio de sesión sin conexión o exigir a los usuarios que vuelvan a autenticarse cuando la cookie expira.

Devoluciones

true si se ha autenticado al usuario; en caso contrario, false.

Excepciones

El valor de la propiedad IsOffline es false y el proveedor de pertenencia no puede tener acceso al servicio de autenticación.

Ejemplos

En el código de ejemplo siguiente se muestra cómo usar este método para validar al usuario mediante controles de inicio de sesión en el código de la aplicación. En este ejemplo se requiere un control denominado usernameTextBox, un TextBox control denominado passwordTextBoxy un CheckBox control denominado 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

Comentarios

Puede usar los servicios de aplicación cliente para validar a los usuarios mediante la autenticación de formularios. Para validar a los usuarios, normalmente llamará al staticMembership.ValidateUser método , que llama internamente al ClientFormsAuthenticationMembershipProvider.ValidateUser(String, String) método . Como alternativa, puede llamar directamente al ClientFormsAuthenticationMembershipProvider.ValidateUser método . Puede llamar a esta sobrecarga para pasar un rememberMe valor además de los username valores y password .

Consulte también

Se aplica a

ValidateUser(String, String, String)

Autentica a un usuario en el URI del servicio especificado mediante el nombre de usuario y contraseña 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

Nombre del usuario que se va a autenticar.

password
String

Contraseña del usuario que se va a autenticar.

serviceUri
String

URI del servicio de autenticación que se va a usar.

Devoluciones

true si se ha autenticado al usuario; en caso contrario, false.

Excepciones

El valor de la propiedad IsOffline es false y el proveedor de pertenencia no puede tener acceso al servicio de autenticación.

Ejemplos

En el código de ejemplo siguiente se muestra cómo usar este método para validar al usuario a través de un servicio de autenticación en una ubicación especificada. Las credenciales de usuario se recuperan de los controles de inicio de sesión en el código de la aplicación. En este ejemplo se requiere un TextBox control denominado usernameTextBox y un TextBox control denominado 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

Comentarios

Puede usar los servicios de aplicación cliente para validar a los usuarios mediante la autenticación de formularios. Para validar a los usuarios, normalmente llamará al staticMembership.ValidateUser método , que llama internamente al ClientFormsAuthenticationMembershipProvider.ValidateUser método . Como alternativa, puede llamar directamente al ClientFormsAuthenticationMembershipProvider.ValidateUser método . Puede llamar a esta sobrecarga para acceder a un servicio de autenticación en la ubicación especificada por el serviceUri parámetro . El uso de esta sobrecarga es una alternativa a establecer la ServiceUri propiedad y llamar a la ValidateUser(String, String) sobrecarga.

Consulte también

Se aplica a