Share via


ClientFormsAuthenticationMembershipProvider.ValidateUser Metodo

Definizione

Autentica un utente utilizzando le credenziali specificate.

Overload

ValidateUser(String, String)

Autentica un utente utilizzando il nome utente e la password specificati.

ValidateUser(String, String, Boolean)

Autentica un utente utilizzando il nome utente e la password specificati, memorizzando facoltativamente un hash della password nella cache dati locale.

ValidateUser(String, String, String)

Autentica un utente all'URI del servizio specificato utilizzando il nome utente e la password specificati.

ValidateUser(String, String)

Autentica un utente utilizzando il nome utente e la password specificati.

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

Parametri

username
String

Nome dell'utente da autenticare oppure Empty o null per recuperare le credenziali dall'implementazione IClientFormsAuthenticationCredentialsProvider che l'applicazione è configurata per utilizzare.

password
String

Password dell'utente da autenticare.

Restituisce

true se l'utente è stato autenticato; in caso contrario, false.

Eccezioni

Il valore della proprietà IsOffline è false e il provider di appartenenze non è in grado di accedere al servizio di autenticazione.

Esempio

Il codice di esempio seguente illustra come usare questo metodo per convalidare l'utente usando un'implementazione IClientFormsAuthenticationCredentialsProvider . In questo esempio è necessario configurare l'applicazione per usare un provider di credenziali.

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

Commenti

È possibile usare i servizi applicazione client per convalidare gli utenti usando l'autenticazione dei moduli. Per convalidare gli utenti, in genere si chiamerà il staticMembership.ValidateUser metodo, che chiama internamente il ClientFormsAuthenticationMembershipProvider.ValidateUser metodo. In alternativa, è possibile chiamare direttamente questo metodo, come illustrato nella sezione Esempio.

L'autenticazione dei moduli richiede che l'utente specifichi le proprie credenziali tramite i controlli di accesso forniti dall'applicazione. È possibile recuperare le credenziali e passarle al Membership.ValidateUser metodo. È anche possibile passare stringhe vuote o null usare un provider di credenziali.

Vedi anche

Si applica a

ValidateUser(String, String, Boolean)

Autentica un utente utilizzando il nome utente e la password specificati, memorizzando facoltativamente un hash della password nella cache dati locale.

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

Parametri

username
String

Nome dell'utente da autenticare.

password
String

Password dell'utente da autenticare.

rememberMe
Boolean

true per memorizzare un hash della password nella cache dati locale per l'utilizzo offline e per la riautenticazione automatica quando il cookie di autenticazione utente scade; false per disabilitare l'accesso offline o richiedere che gli utenti si autentichino di nuovo quando il cookie scade.

Restituisce

true se l'utente è stato autenticato; in caso contrario, false.

Eccezioni

Il valore della proprietà IsOffline è false e il provider di appartenenze non è in grado di accedere al servizio di autenticazione.

Esempio

Il codice di esempio seguente illustra come usare questo metodo per convalidare l'utente usando i controlli di accesso nel codice dell'applicazione. In questo esempio è necessario un TextBox controllo denominato , un TextBox controllo denominato usernameTextBoxpasswordTextBoxe un CheckBox controllo denominato rememberMeCheckBox.

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

Commenti

È possibile usare i servizi applicazione client per convalidare gli utenti usando l'autenticazione dei moduli. Per convalidare gli utenti, in genere si chiamerà il staticMembership.ValidateUser metodo, che chiama internamente il ClientFormsAuthenticationMembershipProvider.ValidateUser(String, String) metodo. In alternativa, è possibile chiamare direttamente il ClientFormsAuthenticationMembershipProvider.ValidateUser metodo. È possibile chiamare questo overload per passare un rememberMe valore oltre ai username valori e password .

Vedi anche

Si applica a

ValidateUser(String, String, String)

Autentica un utente all'URI del servizio specificato utilizzando il nome utente e la password specificati.

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

Parametri

username
String

Nome dell'utente da autenticare.

password
String

Password dell'utente da autenticare.

serviceUri
String

URI del servizio di autenticazione da utilizzare.

Restituisce

true se l'utente è stato autenticato; in caso contrario, false.

Eccezioni

Il valore della proprietà IsOffline è false e il provider di appartenenze non è in grado di accedere al servizio di autenticazione.

Esempio

Il codice di esempio seguente illustra come usare questo metodo per convalidare l'utente tramite un servizio di autenticazione in una posizione specificata. Le credenziali utente vengono recuperate dai controlli di accesso nel codice dell'applicazione. In questo esempio è necessario un controllo denominato e un TextBox controllo denominato usernameTextBoxpasswordTextBox.TextBox

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

Commenti

È possibile usare i servizi applicazione client per convalidare gli utenti usando l'autenticazione dei moduli. Per convalidare gli utenti, in genere si chiamerà il staticMembership.ValidateUser metodo, che chiama internamente il ClientFormsAuthenticationMembershipProvider.ValidateUser metodo. In alternativa, è possibile chiamare direttamente il ClientFormsAuthenticationMembershipProvider.ValidateUser metodo. È possibile chiamare questo overload per accedere a un servizio di autenticazione nel percorso specificato dal serviceUri parametro. L'uso di questo overload è un'alternativa all'impostazione della ServiceUri proprietà e alla chiamata dell'overload ValidateUser(String, String) .

Vedi anche

Si applica a