ClientFormsAuthenticationMembershipProvider Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Permite a autenticação de formulários com serviços de aplicação 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
Exemplos
O seguinte exemplo de código demonstra como usar este método para validar o utilizador através de uma IClientFormsAuthenticationCredentialsProvider implementação.
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
Observações
Pode usar serviços de aplicação cliente para validar utilizadores através da autenticação de formulários. Para ativar a autenticação de formulários, configura a sua aplicação para usar a ClientFormsAuthenticationMembershipProvider classe.
Após a configuração, pode validar os utilizadores chamando o staticMembership.ValidateUser método, que internamente chama o ClientFormsAuthenticationMembershipProvider.ValidateUser(String, String) método.
A autenticação de formulários exige que o utilizador especifique as suas credenciais através dos controlos de login fornecidos pela sua aplicação. Podes recuperar as credenciais e entregá-las ao Membership.ValidateUser método. Também pode passar em cadeias vazias ou null usar um fornecedor de credenciais. Um fornecedor de credenciais é uma IClientFormsAuthenticationCredentialsProvider implementação especificada no ficheiro de configuração da sua aplicação. Normalmente, irá implementar o IClientFormsAuthenticationCredentialsProvider.GetCredentials método para mostrar uma caixa de diálogo de login e devolver um objeto preenchido ClientFormsAuthenticationCredentials . Usar um fornecedor de credenciais permite-lhe partilhar uma única caixa de diálogo de login entre várias aplicações.
O ClientFormsAuthenticationMembershipProvider.ValidateUser método autentica os utilizadores através do serviço de login indicado pela ServiceUri propriedade. O valor da ServiceUri propriedade é normalmente recuperado do ficheiro de configuração da aplicação juntamente com outros valores de configuração.
Se o utilizador for autenticado com sucesso, o fornecedor de serviços define a staticThread.CurrentPrincipal propriedade para um novo ClientRolePrincipal objeto que contém um novo ClientFormsIdentity objeto que contém a informação do utilizador. Se a ClientRoleProvider estiver configurado para a sua aplicação, pode usar o ClientRolePrincipal objeto para recuperar informações de papéis de utilizador do serviço de papéis.
Pode obter uma referência à instância atual ClientFormsAuthenticationMembershipProvider através da staticMembership.Provider propriedade. Pode usar a referência do fornecedor de membros para ligar diretamente ao ClientFormsAuthenticationMembershipProvider.ValidateUser método. Além disso, vai precisar da referência do fornecedor de membros para ligar ao Logout método, que não está disponível na MembershipProvider classe base.
Não pode usar a ClientFormsAuthenticationMembershipProvider classe para criar, eliminar ou modificar informações de membros. Para criar, eliminar ou modificar utilizadores, deve alterar a configuração do serviço de login no servidor.
Construtores
| Name | Description |
|---|---|
| ClientFormsAuthenticationMembershipProvider() |
Inicializa uma nova instância da ClientFormsAuthenticationMembershipProvider classe. |
Propriedades
| Name | Description |
|---|---|
| ApplicationName |
Esta propriedade não é utilizada por esta classe. |
| Description |
Recebe uma descrição breve e amigável, adequada para exibição em ferramentas administrativas ou outras interfaces de utilizador (UIs). (Herdado de ProviderBase) |
| EnablePasswordReset |
Esta propriedade não é utilizada por esta classe. |
| EnablePasswordRetrieval |
Esta propriedade não é utilizada por esta classe. |
| MaxInvalidPasswordAttempts |
Esta propriedade não é utilizada por esta classe. |
| MinRequiredNonAlphanumericCharacters |
Esta propriedade não é utilizada por esta classe. |
| MinRequiredPasswordLength |
Esta propriedade não é utilizada por esta classe. |
| Name |
Recebe o nome amigável usado para se referir ao fornecedor durante a configuração. (Herdado de ProviderBase) |
| PasswordAttemptWindow |
Esta propriedade não é utilizada por esta classe. |
| PasswordFormat |
Esta propriedade não é utilizada por esta classe. |
| PasswordStrengthRegularExpression |
Esta propriedade não é utilizada por esta classe. |
| RequiresQuestionAndAnswer |
Esta propriedade não é utilizada por esta classe. |
| RequiresUniqueEmail |
Esta propriedade não é utilizada por esta classe. |
| ServiceUri |
Obtém ou define o URI do serviço de autenticação. |
Métodos
| Name | Description |
|---|---|
| ChangePassword(String, String, String) |
Este método não é utilizado por esta classe. |
| ChangePasswordQuestionAndAnswer(String, String, String, String) |
Este método não é utilizado por esta classe. |
| CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) |
Este método não é utilizado por esta classe. |
| DecryptPassword(Byte[]) |
Desencripta uma palavra-passe encriptada. (Herdado de MembershipProvider) |
| DeleteUser(String, Boolean) |
Este método não é utilizado por esta classe. |
| EncryptPassword(Byte[], MembershipPasswordCompatibilityMode) |
Encripta a palavra-passe especificada usando o modo de compatibilidade de palavra-passe especificado. (Herdado de MembershipProvider) |
| EncryptPassword(Byte[]) |
Encripta uma palavra-passe. (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 é utilizado por esta classe. |
| FindUsersByName(String, Int32, Int32, Int32) |
Este método não é utilizado por esta classe. |
| GetAllUsers(Int32, Int32, Int32) |
Este método não é utilizado por esta classe. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetNumberOfUsersOnline() |
Este método não é utilizado por esta classe. |
| GetPassword(String, String) |
Este método não é utilizado por esta classe. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| GetUser(Object, Boolean) |
Este método não é utilizado por esta classe. |
| GetUser(String, Boolean) |
Este método não é utilizado por esta classe. |
| GetUserNameByEmail(String) |
Este método não é utilizado por esta classe. |
| Initialize(String, NameValueCollection) |
Inicializa o fornecedor. |
| Logout() |
Faz logout do utilizador. |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| OnValidatingPassword(ValidatePasswordEventArgs) |
Levanta o ValidatingPassword evento se um gestor de eventos tiver sido definido. (Herdado de MembershipProvider) |
| ResetPassword(String, String) |
Este método não é utilizado por esta classe. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| UnlockUser(String) |
Este método não é utilizado por esta classe. |
| UpdateUser(MembershipUser) |
Este método não é utilizado por esta classe. |
| ValidateUser(String, String, Boolean) |
Autentica um utilizador usando o nome de utilizador e a palavra-passe especificados, armazenando opcionalmente um hash da palavra-passe na cache de dados local. |
| ValidateUser(String, String, String) |
Autentica um utilizador no URI de serviço especificado usando o nome de utilizador e a palavra-passe especificados. |
| ValidateUser(String, String) |
Autentica um utilizador usando o nome de utilizador e a palavra-passe especificados. |
evento
| Name | Description |
|---|---|
| UserValidated |
Ocorre quando o utilizador é validado. |
| ValidatingPassword |
Ocorre quando um utilizador é criado, uma palavra-passe é alterada ou uma palavra-passe é redefinida. (Herdado de MembershipProvider) |