ClientFormsAuthenticationMembershipProvider Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Abilita l'autenticazione basata su form con i servizi dell'applicazione client.
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
- Ereditarietà
Esempio
Il codice di esempio seguente illustra come usare questo metodo per convalidare l'utente usando un'implementazione 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
Commenti
È possibile usare i servizi dell'applicazione client per convalidare gli utenti usando l'autenticazione basata su form. Per abilitare l'autenticazione basata su form, configurare l'applicazione per l'uso della ClientFormsAuthenticationMembershipProvider classe .
Dopo la configurazione, è possibile convalidare gli utenti chiamando il staticMembership.ValidateUser metodo , che chiama internamente il ClientFormsAuthenticationMembershipProvider.ValidateUser(String, String) metodo .
L'autenticazione basata su form 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. Un provider di credenziali è un'implementazione IClientFormsAuthenticationCredentialsProvider specificata nel file di configurazione dell'applicazione. In genere si implementerà il IClientFormsAuthenticationCredentialsProvider.GetCredentials metodo per visualizzare una finestra di dialogo di accesso e restituire un oggetto popolato ClientFormsAuthenticationCredentials . L'uso di un provider di credenziali consente di condividere una singola finestra di dialogo di accesso tra più applicazioni.
Il ClientFormsAuthenticationMembershipProvider.ValidateUser metodo autentica gli utenti tramite il servizio di accesso indicato dalla ServiceUri proprietà . Il valore della ServiceUri proprietà viene in genere recuperato dal file di configurazione dell'applicazione insieme ad altri valori di configurazione.
Se l'utente viene autenticato correttamente, il provider di servizi imposta la staticThread.CurrentPrincipal proprietà su un nuovo ClientRolePrincipal oggetto contenente un nuovo ClientFormsIdentity oggetto contenente le informazioni utente. Se un ClientRoleProvider oggetto è configurato per l'applicazione, è possibile usare l'oggetto ClientRolePrincipal per recuperare le informazioni sul ruolo utente dal servizio ruoli.
È possibile recuperare un riferimento all'istanza corrente ClientFormsAuthenticationMembershipProvider tramite la staticMembership.Provider proprietà . È possibile usare il riferimento al provider di appartenenze per chiamare direttamente il ClientFormsAuthenticationMembershipProvider.ValidateUser metodo . Inoltre, sarà necessario il riferimento del provider di appartenenze per chiamare il Logout metodo , che non è disponibile nella MembershipProvider classe base.
Non è possibile usare la ClientFormsAuthenticationMembershipProvider classe per creare, eliminare o modificare le informazioni sull'appartenenza. Per creare, eliminare o modificare gli utenti, è necessario modificare la configurazione del servizio di accesso nel server.
Costruttori
| Nome | Descrizione |
|---|---|
| ClientFormsAuthenticationMembershipProvider() |
Inizializza una nuova istanza della classe ClientFormsAuthenticationMembershipProvider. |
Proprietà
| Nome | Descrizione |
|---|---|
| ApplicationName |
Questa proprietà non viene utilizzata da questa classe. |
| Description |
Ottiene una breve descrizione descrittiva adatta per la visualizzazione negli strumenti di amministrazione o in altre interfacce utente. (Ereditato da ProviderBase) |
| EnablePasswordReset |
Questa proprietà non viene utilizzata da questa classe. |
| EnablePasswordRetrieval |
Questa proprietà non viene utilizzata da questa classe. |
| MaxInvalidPasswordAttempts |
Questa proprietà non viene utilizzata da questa classe. |
| MinRequiredNonAlphanumericCharacters |
Questa proprietà non viene utilizzata da questa classe. |
| MinRequiredPasswordLength |
Questa proprietà non viene utilizzata da questa classe. |
| Name |
Ottiene il nome descrittivo utilizzato per fare riferimento al provider durante la configurazione. (Ereditato da ProviderBase) |
| PasswordAttemptWindow |
Questa proprietà non viene utilizzata da questa classe. |
| PasswordFormat |
Questa proprietà non viene utilizzata da questa classe. |
| PasswordStrengthRegularExpression |
Questa proprietà non viene utilizzata da questa classe. |
| RequiresQuestionAndAnswer |
Questa proprietà non viene utilizzata da questa classe. |
| RequiresUniqueEmail |
Questa proprietà non viene utilizzata da questa classe. |
| ServiceUri |
Ottiene o imposta l'URI del servizio di autenticazione. |
Metodi
| Nome | Descrizione |
|---|---|
| ChangePassword(String, String, String) |
Questo metodo non viene utilizzato da questa classe. |
| ChangePasswordQuestionAndAnswer(String, String, String, String) |
Questo metodo non viene utilizzato da questa classe. |
| CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) |
Questo metodo non viene utilizzato da questa classe. |
| DecryptPassword(Byte[]) |
Decrittografa una password crittografata. (Ereditato da MembershipProvider) |
| DeleteUser(String, Boolean) |
Questo metodo non viene utilizzato da questa classe. |
| EncryptPassword(Byte[], MembershipPasswordCompatibilityMode) |
Crittografa la password specificata usando la modalità di compatibilità password specificata. (Ereditato da MembershipProvider) |
| EncryptPassword(Byte[]) |
Crittografa una password. (Ereditato da MembershipProvider) |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| FindUsersByEmail(String, Int32, Int32, Int32) |
Questo metodo non viene utilizzato da questa classe. |
| FindUsersByName(String, Int32, Int32, Int32) |
Questo metodo non viene utilizzato da questa classe. |
| GetAllUsers(Int32, Int32, Int32) |
Questo metodo non viene utilizzato da questa classe. |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetNumberOfUsersOnline() |
Questo metodo non viene utilizzato da questa classe. |
| GetPassword(String, String) |
Questo metodo non viene utilizzato da questa classe. |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| GetUser(Object, Boolean) |
Questo metodo non viene utilizzato da questa classe. |
| GetUser(String, Boolean) |
Questo metodo non viene utilizzato da questa classe. |
| GetUserNameByEmail(String) |
Questo metodo non viene utilizzato da questa classe. |
| Initialize(String, NameValueCollection) |
Inizializza il provider. |
| Logout() |
Disconnette l'utente. |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| OnValidatingPassword(ValidatePasswordEventArgs) |
Genera l'evento ValidatingPassword se è stato definito un gestore eventi. (Ereditato da MembershipProvider) |
| ResetPassword(String, String) |
Questo metodo non viene utilizzato da questa classe. |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
| UnlockUser(String) |
Questo metodo non viene utilizzato da questa classe. |
| UpdateUser(MembershipUser) |
Questo metodo non viene utilizzato da questa classe. |
| ValidateUser(String, String, Boolean) |
Autentica un utente usando il nome utente e la password specificati, archiviando facoltativamente un hash della password nella cache dei dati locale. |
| ValidateUser(String, String, String) |
Autentica un utente nell'URI del servizio specificato usando il nome utente e la password specificati. |
| ValidateUser(String, String) |
Autentica un utente usando il nome utente e la password specificati. |
Eventi
| Nome | Descrizione |
|---|---|
| UserValidated |
Si verifica quando l'utente viene convalidato. |
| ValidatingPassword |
Si verifica quando viene creato un utente, viene modificata una password o viene reimpostata una password. (Ereditato da MembershipProvider) |