FormsAuthentication.RedirectFromLoginPage 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í.
Přesměruje ověřeného uživatele zpět na původně požadovanou adresu URL nebo výchozí adresu URL.
Přetížení
RedirectFromLoginPage(String, Boolean) |
Přesměruje ověřeného uživatele zpět na původně požadovanou adresu URL nebo výchozí adresu URL. |
RedirectFromLoginPage(String, Boolean, String) |
Přesměruje ověřeného uživatele zpět na původně požadovanou adresu URL nebo výchozí adresu URL pomocí zadané cesty souboru cookie pro ověřování formulářů. |
RedirectFromLoginPage(String, Boolean)
Přesměruje ověřeného uživatele zpět na původně požadovanou adresu URL nebo výchozí adresu URL.
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)
Parametry
- userName
- String
Ověřené uživatelské jméno.
- createPersistentCookie
- Boolean
true
vytvořit trvalý soubor cookie (soubor cookie, který se ukládá napříč relacemi prohlížeče); v opačném případě . false
Výjimky
Zpáteční adresa URL zadaná v řetězci dotazu obsahuje jiný protokol než HTTP: nebo HTTPS:.
Příklady
Následující příklad kódu přesměruje ověřené uživatele na původně požadovanou adresu URL nebo na DefaultUrladresu . Příklad kódu používá k ověření uživatelů ASP.NET členství. Další informace o členství ASP.NET najdete v tématu Správa uživatelů pomocí členství.
Důležité
Tento příklad obsahuje textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba. Ve výchozím nastavení ASP.NET webové stránky ověřují, že uživatelský vstup neobsahuje skript nebo elementy HTML. Další informace najdete v tématu Přehled zneužití skriptů.
<%@ 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>
Poznámky
Metoda RedirectFromLoginPage přesměruje na adresu URL zadanou v řetězci dotazu pomocí ReturnURL
názvu proměnné. Například v adrese URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx
RedirectFromLoginPage metoda přesměruje na zpáteční adresu URL caller.aspx
. Pokud proměnná ReturnURL
neexistuje, RedirectFromLoginPage metoda přesměruje na adresu URL ve DefaultUrl vlastnosti.
ASP.NET automaticky přidá zpáteční adresu URL, když je prohlížeč přesměrován na přihlašovací stránku.
Ve výchozím nastavení ReturnUrl
musí proměnná odkazovat na stránku v rámci aktuální aplikace. Pokud ReturnUrl
odkazuje na stránku v jiné aplikaci nebo na jiném serveru, RedirectFromLoginPage metody přesměrují na adresu URL ve DefaultUrl vlastnosti. Pokud chcete povolit přesměrování na stránku mimo aktuální aplikaci, musíte vlastnost nastavit EnableCrossAppRedirects na true
pomocí atributu enableCrossAppRedirects
elementu konfigurace formuláře .
Důležité
EnableCrossAppRedirects Nastavení vlastnosti na true
povolit přesměrování mezi aplikacemi je potenciální bezpečnostní hrozbou. Další informace najdete ve EnableCrossAppRedirects vlastnosti.
CookiesSupported Pokud je true
vlastnost , a proměnná ReturnUrl
je v aktuální aplikaci nebo EnableCrossAppRedirects vlastnost je true
, RedirectFromLoginPage pak metoda vydá lístek ověřování a umístí ho do výchozího SetAuthCookie souboru cookie pomocí metody .
Pokud CookiesSupported je false
a cesta přesměrování je na adresu URL v aktuální aplikaci, lístek se vydá jako součást adresy URL přesměrování. Pokud CookiesSupported je false
hodnota , EnableCrossAppRedirects je true
a adresa URL přesměrování neodkazuje na stránku v rámci aktuální aplikace, RedirectFromLoginPage metoda vydá ověřovací lístek a umístí ho do QueryString vlastnosti.
Viz také
Platí pro
RedirectFromLoginPage(String, Boolean, String)
Přesměruje ověřeného uživatele zpět na původně požadovanou adresu URL nebo výchozí adresu URL pomocí zadané cesty souboru cookie pro ověřování formulářů.
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)
Parametry
- userName
- String
Ověřené uživatelské jméno.
- createPersistentCookie
- Boolean
true
vytvořit trvalý soubor cookie (soubor cookie, který se ukládá napříč relacemi prohlížeče); v opačném případě . false
- strCookiePath
- String
Cesta k souboru cookie pro lístek ověřování formulářů.
Výjimky
Zpáteční adresa URL zadaná v řetězci dotazu obsahuje jiný protokol než HTTP: nebo HTTPS:.
Poznámky
Metoda RedirectFromLoginPage přesměruje na návratovou adresu URL zadanou v řetězci dotazu pomocí ReturnURL
názvu proměnné. Například v adrese URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx
RedirectFromLoginPage metoda přesměruje na zpáteční adresu URL caller.aspx
. Pokud proměnná ReturnURL
neexistuje, RedirectFromLoginPage metoda přesměruje na adresu URL ve DefaultUrl vlastnosti.
ASP.NET automaticky přidá zpáteční adresu URL, když je prohlížeč přesměrován na přihlašovací stránku.
Ve výchozím nastavení ReturnUrl
musí proměnná odkazovat na stránku v rámci aktuální aplikace. Pokud ReturnUrl
odkazuje na stránku v jiné aplikaci nebo na jiném serveru, RedirectFromLoginPage metoda přesměruje na adresu URL ve DefaultUrl vlastnosti. Pokud chcete povolit přesměrování na stránku mimo aktuální aplikaci, musíte vlastnost nastavit EnableCrossAppRedirects na true
pomocí atributu enableCrossAppRedirects
elementu konfigurace formuláře .
Důležité
EnableCrossAppRedirects Nastavení vlastnosti na true
povolit přesměrování mezi aplikacemi je potenciální bezpečnostní hrozbou. Další informace najdete ve EnableCrossAppRedirects vlastnosti.
CookiesSupported Pokud je true
vlastnost , a proměnná je v ReturnUrl
aktuální aplikaci nebo EnableCrossAppRedirects vlastnost je true
, RedirectFromLoginPage pak metoda vydá lístek ověřování a umístí ho do souboru cookie určeného strCookiePath
parametrem pomocí SetAuthCookie metody .
Pokud CookiesSupported je false
a cesta přesměrování je na adresu URL v aktuální aplikaci, lístek se vydá jako součást adresy URL přesměrování. Pokud CookiesSupported je false
hodnota , EnableCrossAppRedirects je true
a adresa URL přesměrování neodkazuje na stránku v rámci aktuální aplikace, RedirectFromLoginPage metoda vydá ověřovací lístek a umístí ho do QueryString vlastnosti.