ClientFormsAuthenticationMembershipProvider.Logout Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Déconnecte l’utilisateur.
public:
void Logout();
public void Logout ();
member this.Logout : unit -> unit
Public Sub Logout ()
Exceptions
La valeur de propriété IsOffline est false
et le fournisseur d’appartenances ne peut pas accéder au service d’authentification.
Exemples
L’exemple de code suivant montre comment utiliser cette méthode pour déconnecter l’utilisateur.
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
Remarques
La méthode Logout efface tous les cookies d’authentification du cache des cookies et réinitialise la propriété static
Thread.CurrentPrincipal à un objet WindowsPrincipal qui contient le WindowsIdentityactuel.
Après avoir appelé cette méthode, l’utilisateur actuel n’est plus authentifié pour les services d’application cliente. Cela signifie que vous ne pouvez pas récupérer des rôles par le biais de la classe ClientRoleProvider et des paramètres via la classe ClientSettingsProvider. Toutefois, étant donné que l’utilisateur peut avoir une identité Windows valide, vous pouvez toujours recevoir une valeur true
à partir du code, par exemple : Thread.CurrentPrincipal.Identity.IsAuthenticated
. Pour déterminer si l’utilisateur est authentifié pour les services d’application cliente, vérifiez que la valeur de propriété Identity de l'IPrincipal récupérée via la propriété static
CurrentPrincipal est une référence ClientFormsIdentity. Vérifiez ensuite la propriété ClientFormsIdentity.IsAuthenticated.
Pour réauthentifier l’utilisateur actuel, appelez la méthode ClientFormsAuthenticationMembershipProvider.ValidateUser ou la méthode static
Membership.ValidateUser.
S’applique à
Voir aussi
- ValidateUser
- ValidateUser(String, String)
- des services d’applications clientes