Sdílet prostřednictvím


FormsAuthentication.RedirectFromLoginPage Metoda

Definice

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

truevytvoř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.aspxRedirectFromLoginPage 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 enableCrossAppRedirectselementu 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 truevlastnost , 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 falsehodnota , EnableCrossAppRedirects je truea 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

truevytvoř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.aspxRedirectFromLoginPage 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 enableCrossAppRedirectselementu 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 truevlastnost , 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 falsehodnota , EnableCrossAppRedirects je truea 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