Freigeben über


FormsAuthentication.SignOut-Methode

Entfernt das Formularauthentifizierungsticket aus dem Browser.

Namespace: System.Web.Security
Assembly: System.Web (in system.web.dll)

Syntax

'Declaration
Public Shared Sub SignOut
'Usage

FormsAuthentication.SignOut
public static void SignOut ()
public:
static void SignOut ()
public static void SignOut ()
public static function SignOut ()

Hinweise

Die SignOut-Methode entfernt die Informationen zum Formularauthentifizierungsticket aus dem Cookie oder dem URL, wenn CookiesSupported false ist. Sie können die SignOut-Methode in Verbindung mit der RedirectToLoginPage-Methode verwenden, um einen Benutzer abzumelden und die Anmeldung eines anderen Benutzers zuzulassen.

Wenn Sie den Modus ohne Cookies exklusiv verwenden oder den gemischten Modus unterstützen, müssen Sie die Umleitung zur Anmeldeseite explizit steuern, wenn spezielle Geschäftslogik ausgeführt werden muss, weil der anonyme Bezeichner entfernt wurde.

Beim Aufrufen der SignOut-Methode erfolgt eine Umleitung auf die Anmeldeseite der Anwendung, indem die Redirect-Methode mit dem auf false festgelegten endResponse-Parameter aufgerufen wird. Die Umleitung erfolgt erst, nachdem die Ausführung der aktuellen Seite abgeschlossen ist, sodass zusätzlicher Code ausgeführt werden kann. Wenn der Code keine explizite Umleitung auf eine andere Seite enthält, wird der Benutzer auf die in der Konfigurationsdatei der Anwendung konfigurierte Anmeldeseite umgeleitet.

SicherheitshinweisSicherheitshinweis

Beim Aufruf der SignOut-Methode wird nur das Formularauthentifizierungscookie entfernt. Auf dem Webserver werden keine gültigen und abgelaufenen Authentifizierungstickets zum späteren Vergleich gespeichert. Dies stellt ein Sicherheitsrisiko dar, da ein böswilliger Benutzer sich ein gültiges Formularauthentifizierungscookie verschaffen und dies verwenden könnte. Wenn Sie Formularauthentifizierungscookies verwenden, sollten Sie folgende Sicherheitsmaßnahmen ergreifen:

Beispiel

Im folgenden Codebeispiel wird das Formularauthentifizierungscookie mithilfe der SignOut-Methode gelöscht, und der Benutzer wird mithilfe der RedirectToLoginPage-Methode zur Anmeldeseite umgeleitet.

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>

<script runat="server">

Public Sub LoginLink_OnClick(sender As Object, args As EventArgs)
  FormsAuthentication.SignOut()
  FormsAuthentication.RedirectToLoginPage()
End Sub

</script>
<html>
<body>

<form runat="server">
Welcome <B><%=User.Identity.Name%></B>. Not <B><%=User.Identity.Name%></B>? 
Click <asp:LinkButton id="LoginLink" Text="here" 
                      OnClick="LoginLink_OnClick" runat="server" />
to sign in.

<!-- Page Contents -->

</form>



</body>
</html>
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>

<script runat="server">

public void LoginLink_OnClick(object sender, EventArgs args)
{
  FormsAuthentication.SignOut();
  FormsAuthentication.RedirectToLoginPage();
}

</script>
<html>
<body>

<form runat="server">
Welcome <B><%=User.Identity.Name%></B>. Not <B><%=User.Identity.Name%></B>? 
Click <asp:LinkButton id="LoginLink" Text="here" 
                      OnClick="LoginLink_OnClick" runat="server" />
to sign in.

<!-- Page Contents -->

</form>



</body>
</html>

Plattformen

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

FormsAuthentication-Klasse
FormsAuthentication-Member
System.Web.Security-Namespace

Weitere Ressourcen

Sicherheit für ASP.NET-Webanwendungen