ClientFormsAuthenticationMembershipProvider.Logout Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Odhlásí uživatele.
public:
void Logout();
public void Logout ();
member this.Logout : unit -> unit
Public Sub Logout ()
Výjimky
Hodnota vlastnosti IsOffline je false
a zprostředkovatel členství nemůže získat přístup ke službě ověřování.
Příklady
Následující příklad kódu ukazuje, jak použít tuto metodu k odhlášení uživatele.
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
Poznámky
Metoda Logout vymaže všechny ověřovací soubory cookie z mezipaměti cookie a resetuje vlastnost static
Thread.CurrentPrincipal na objekt WindowsPrincipal, který obsahuje aktuální WindowsIdentity.
Po volání této metody se aktuální uživatel již neověřuje pro služby klientských aplikací. To znamená, že nemůžete načíst role prostřednictvím třídy ClientRoleProvider a nastavení prostřednictvím třídy ClientSettingsProvider. Vzhledem k tomu, že uživatel může mít platnou identitu systému Windows, můžete stále obdržet true
hodnotu z kódu, například následující: Thread.CurrentPrincipal.Identity.IsAuthenticated
. Chcete-li zjistit, zda je uživatel ověřen pro služby klientských aplikací, ověřte, že hodnota vlastnosti IdentityIPrincipal načtená prostřednictvím vlastnosti static
CurrentPrincipal je ClientFormsIdentity odkaz. Potom zkontrolujte vlastnost ClientFormsIdentity.IsAuthenticated.
Pokud chcete aktuálního uživatele znovu vytvořit, zavolejte metodu ClientFormsAuthenticationMembershipProvider.ValidateUser nebo metodu static
Membership.ValidateUser.
Platí pro
Viz také
- ValidateUser
- ValidateUser(String, String)
- klientských aplikačních služeb