Freigeben über


FormsAuthentication.RedirectFromLoginPage Methode

Definition

Leitet einen authentifizierten Benutzer an die ursprünglich angeforderte URL oder die Standard-URL um.

Überlädt

RedirectFromLoginPage(String, Boolean)

Leitet einen authentifizierten Benutzer an die ursprünglich angeforderte URL oder die Standard-URL um.

RedirectFromLoginPage(String, Boolean, String)

Leitet einen authentifizierten Benutzer wieder an die ursprünglich angeforderte URL oder an die Standard-URL um. Hierfür wird der angegebene Cookiepfad für das Formularauthentifizierungscookie verwendet.

RedirectFromLoginPage(String, Boolean)

Leitet einen authentifizierten Benutzer an die ursprünglich angeforderte URL oder die Standard-URL um.

public:
 static void RedirectFromLoginPage(System::String ^ userName, bool createPersistentCookie);
public static void RedirectFromLoginPage (string userName, bool createPersistentCookie);
static member RedirectFromLoginPage : string * bool -> unit
Public Shared Sub RedirectFromLoginPage (userName As String, createPersistentCookie As Boolean)

Parameter

userName
String

Der Name des authentifizierten Benutzers.

createPersistentCookie
Boolean

true, um ein permanentes Cookie (das über Browsersitzungen hinweg gespeichert wird) zu erstellen, andernfalls false.

Ausnahmen

Die in der Abfragezeichenfolge angegebene Rückgabe-URL enthält ein anderes Protokoll als HTTP: oder HTTPS:.

Beispiele

Im folgenden Codebeispiel werden überprüfte Benutzer entweder an die ursprünglich angeforderte URL oder die DefaultUrlumgeleitet. Im Codebeispiel wird ASP.NET Mitgliedschaft verwendet, um Benutzer zu überprüfen. Weitere Informationen zu ASP.NET Mitgliedschaft finden Sie unter Verwalten von Benutzern mithilfe der Mitgliedschaft.

Wichtig

Dieses Beispiel enthält ein Textfeld, das Benutzereingaben akzeptiert, was eine potenzielle Sicherheitsgefährdung darstellt. Standardmäßig stellen ASP.NET-Webseiten sicher, dass Benutzereingaben keine Skript- oder HTML-Elemente enthalten. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

public void Login_OnClick(object sender, EventArgs args)
{
   if (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
   else
     Msg.Text = "Login failed. Please check your user name and password and try again.";
}


</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
  <title>Login</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Login</h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />

  Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
  Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />
 
  <asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
  <asp:CheckBox id="NotPublicCheckBox" runat="server" /> 
  Check here if this is <span style="text-decoration:underline">not</span> a public computer.

</form>

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

Public Sub Login_OnClick(sender As Object, args As  EventArgs)

   If (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text)) Then
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked)
   Else
     Msg.Text = "Login failed. Please check your user name and password and try again."
   End If

End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
  <title>Login</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Login</h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />

  Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
  Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />
 
  <asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
  <asp:CheckBox id="NotPublicCheckBox" runat="server" /> 
  Check here if this is <span style="text-decoration:underline">not</span> a public computer.

</form>

</body>
</html>

Hinweise

Die RedirectFromLoginPage -Methode leitet mithilfe des Variablennamens an die ReturnURL in der Abfragezeichenfolge angegebene URL um. Beispielsweise leitet die -Methode in der URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspxRedirectFromLoginPage an die Rückgabe-URL caller.aspxum. Wenn die ReturnURL Variable nicht vorhanden ist, leitet die RedirectFromLoginPage -Methode an die URL in der DefaultUrl -Eigenschaft um.

ASP.NET fügt automatisch die Rückgabe-URL hinzu, wenn der Browser zur Anmeldeseite umgeleitet wird.

Standardmäßig muss die ReturnUrl Variable auf eine Seite innerhalb der aktuellen Anwendung verweisen. Wenn ReturnUrl auf eine Seite in einer anderen Anwendung oder auf einem anderen Server verweist, werden die RedirectFromLoginPage Methoden an die URL in der DefaultUrl -Eigenschaft umgeleitet. Wenn Sie Umleitungen zu einer Seite außerhalb der aktuellen Anwendung zulassen möchten, müssen Sie die EnableCrossAppRedirects -Eigenschaft auf true das enableCrossAppRedirects -Attribut des Forms-Konfigurationselements festlegen.

Wichtig

Das Festlegen der EnableCrossAppRedirects Eigenschaft auf , true um anwendungsübergreifende Umleitungen zuzulassen, stellt eine potenzielle Sicherheitsbedrohung dar. Weitere Informationen finden Sie in den Ausführungen zur EnableCrossAppRedirects-Eigenschaft.

Wenn die CookiesSupported -Eigenschaft ist trueund sich entweder die ReturnUrl Variable in der aktuellen Anwendung befindet oder die EnableCrossAppRedirects -Eigenschaft ist true, gibt die RedirectFromLoginPage Methode ein Authentifizierungsticket aus und platziert es mithilfe der SetAuthCookie -Methode im Standardcookies.

Wenn CookiesSupported ist false und der Umleitungspfad zu einer URL in der aktuellen Anwendung ist, wird das Ticket als Teil der Umleitungs-URL ausgestellt. falseWenn CookiesSupported ist , EnableCrossAppRedirects ist trueund die Umleitungs-URL nicht auf eine Seite innerhalb der aktuellen Anwendung verweist, gibt die RedirectFromLoginPage Methode ein Authentifizierungsticket aus und platziert es in der QueryString -Eigenschaft.

Weitere Informationen

Gilt für:

RedirectFromLoginPage(String, Boolean, String)

Leitet einen authentifizierten Benutzer wieder an die ursprünglich angeforderte URL oder an die Standard-URL um. Hierfür wird der angegebene Cookiepfad für das Formularauthentifizierungscookie verwendet.

public:
 static void RedirectFromLoginPage(System::String ^ userName, bool createPersistentCookie, System::String ^ strCookiePath);
public static void RedirectFromLoginPage (string userName, bool createPersistentCookie, string strCookiePath);
static member RedirectFromLoginPage : string * bool * string -> unit
Public Shared Sub RedirectFromLoginPage (userName As String, createPersistentCookie As Boolean, strCookiePath As String)

Parameter

userName
String

Der Name des authentifizierten Benutzers.

createPersistentCookie
Boolean

true, um ein permanentes Cookie (das über Browsersitzungen hinweg gespeichert wird) zu erstellen, andernfalls false.

strCookiePath
String

Der Cookiepfad für das Formularauthentifizierungsticket.

Ausnahmen

Die in der Abfragezeichenfolge angegebene Rückgabe-URL enthält ein anderes Protokoll als HTTP: oder HTTPS:.

Hinweise

Die RedirectFromLoginPage -Methode leitet mithilfe des Variablennamens an die in der Abfragezeichenfolge ReturnURL angegebene Rückgabe-URL um. Beispielsweise leitet die -Methode in der URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspxRedirectFromLoginPage an die Rückgabe-URL caller.aspxum. Wenn die ReturnURL Variable nicht vorhanden ist, leitet die RedirectFromLoginPage -Methode an die URL in der DefaultUrl -Eigenschaft um.

ASP.NET fügt automatisch die Rückgabe-URL hinzu, wenn der Browser zur Anmeldeseite umgeleitet wird.

Standardmäßig muss die ReturnUrl Variable auf eine Seite innerhalb der aktuellen Anwendung verweisen. Wenn ReturnUrl auf eine Seite in einer anderen Anwendung oder auf einem anderen Server verweist, leitet die RedirectFromLoginPage Methode an die URL in der DefaultUrl -Eigenschaft um. Wenn Sie Umleitungen zu einer Seite außerhalb der aktuellen Anwendung zulassen möchten, müssen Sie die EnableCrossAppRedirects -Eigenschaft auf true das enableCrossAppRedirects -Attribut des Forms-Konfigurationselements festlegen.

Wichtig

Das Festlegen der EnableCrossAppRedirects Eigenschaft auf , true um anwendungsübergreifende Umleitungen zuzulassen, stellt eine potenzielle Sicherheitsbedrohung dar. Weitere Informationen finden Sie in den Ausführungen zur EnableCrossAppRedirects-Eigenschaft.

Wenn die CookiesSupported -Eigenschaft ist trueund sich entweder die ReturnUrl Variable in der aktuellen Anwendung befindet oder die EnableCrossAppRedirects -Eigenschaft ist, gibt die RedirectFromLoginPage Methode ein Authentifizierungsticket aus und platziert es in dem Cookie, das strCookiePath vom Parameter mithilfe der SetAuthCookie -Methode angegeben wirdtrue.

Wenn CookiesSupported ist false und der Umleitungspfad zu einer URL in der aktuellen Anwendung ist, wird das Ticket als Teil der Umleitungs-URL ausgestellt. falseWenn CookiesSupported ist , EnableCrossAppRedirects ist trueund die Umleitungs-URL nicht auf eine Seite innerhalb der aktuellen Anwendung verweist, gibt die RedirectFromLoginPage Methode ein Authentifizierungsticket aus und platziert es in der QueryString -Eigenschaft.

Weitere Informationen

Gilt für: