ClientFormsAuthenticationMembershipProvider.Logout Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Faz logoff do usuário.
public:
void Logout();
public void Logout ();
member this.Logout : unit -> unit
Public Sub Logout ()
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 fazer logoff do usuário.
private void logoutButton_Click(object sender, EventArgs e)
{
SaveSettings();
ClientFormsAuthenticationMembershipProvider authProvider =
(ClientFormsAuthenticationMembershipProvider)
System.Web.Security.Membership.Provider;
try
{
authProvider.Logout();
}
catch (WebException)
{
MessageBox.Show("Unable to access the authentication service." +
Environment.NewLine + "Logging off locally only.",
"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
ConnectivityStatus.IsOffline = true;
authProvider.Logout();
ConnectivityStatus.IsOffline = false;
}
Application.Restart();
}
Private Sub logoutButton_Click(ByVal sender As Object, _
ByVal e As EventArgs) Handles logoutButton.Click
SaveSettings()
Dim authProvider As ClientFormsAuthenticationMembershipProvider = _
CType(System.Web.Security.Membership.Provider, _
ClientFormsAuthenticationMembershipProvider)
Try
authProvider.Logout()
Catch ex As WebException
MessageBox.Show("Unable to access the authentication service." & _
Environment.NewLine & "Logging off locally only.", _
"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning)
ConnectivityStatus.IsOffline = True
authProvider.Logout()
ConnectivityStatus.IsOffline = False
End Try
Application.Restart()
End Sub
Comentários
O Logout método limpa todos os cookies de autenticação do cache de cookie e redefine a static
Thread.CurrentPrincipal propriedade para um WindowsPrincipal objeto que contém o atual WindowsIdentity.
Depois de chamar esse método, o usuário atual não é mais autenticado para serviços de aplicativo cliente. Isso significa que você não pode recuperar funções por meio da ClientRoleProvider classe e das configurações por meio da ClientSettingsProvider classe . No entanto, como o usuário pode ter uma identidade válida do Windows, você ainda pode receber um true
valor do código, como o seguinte: Thread.CurrentPrincipal.Identity.IsAuthenticated
. Para determinar se o usuário é autenticado para serviços de aplicativo cliente, confirme se o Identity valor da propriedade do IPrincipal recuperado por meio da static
CurrentPrincipal propriedade é uma ClientFormsIdentity referência. Em seguida, verifique a ClientFormsIdentity.IsAuthenticated propriedade .
Para autenticar novamente o usuário atual, chame o ClientFormsAuthenticationMembershipProvider.ValidateUser método ou o static
Membership.ValidateUser método .
Aplica-se a
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de