FormsAuthentication.RedirectFromLoginPage Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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.aspx
RedirectFromLoginPage an die Rückgabe-URL caller.aspx
um. 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 true
und 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.
false
Wenn CookiesSupported ist , EnableCrossAppRedirects ist true
und 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.aspx
RedirectFromLoginPage an die Rückgabe-URL caller.aspx
um. 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 true
und 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.
false
Wenn CookiesSupported ist , EnableCrossAppRedirects ist true
und 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.