Partilhar via


FormsAuthentication.RedirectFromLoginPage Método

Definição

Redireciona um usuário autenticado de volta para a URL solicitada originalmente ou a URL padrão.

Sobrecargas

RedirectFromLoginPage(String, Boolean)

Redireciona um usuário autenticado de volta para a URL solicitada originalmente ou a URL padrão.

RedirectFromLoginPage(String, Boolean, String)

Redireciona um usuário autenticado de volta para a URL solicitada originalmente ou para a URL padrão usando o caminho do cookie especificado para o cookie de autenticação de formulários.

RedirectFromLoginPage(String, Boolean)

Redireciona um usuário autenticado de volta para a URL solicitada originalmente ou a URL padrão.

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)

Parâmetros

userName
String

O nome de usuário autenticado.

createPersistentCookie
Boolean

true para criar um cookie durável (um que seja salvo entre as sessões do navegador); caso contrário, false.

Exceções

A URL de retorno especificada na cadeia de caracteres de consulta contém um protocolo diferente de HTTP: ou HTTPS:.

Exemplos

O exemplo de código a seguir redireciona usuários validados para a URL solicitada originalmente ou o DefaultUrl. O exemplo de código usa ASP.NET associação para validar usuários. Para obter mais informações sobre ASP.NET associação, consulte Gerenciando usuários usando associação.

Importante

Este exemplo contém uma caixa de texto que aceita a entrada do usuário, que é uma possível ameaça à segurança. Por padrão, ASP.NET páginas da Web validam que a entrada do usuário não inclui elementos HTML ou script. Para obter mais informações, consulte Visão geral de explorações de script.

<%@ 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>

Comentários

O RedirectFromLoginPage método redireciona para a URL especificada na cadeia de caracteres de consulta usando o nome da ReturnURL variável. Por exemplo, na URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx, o RedirectFromLoginPage método redireciona para a URL caller.aspxde retorno . Se a ReturnURL variável não existir, o RedirectFromLoginPage método redirecionará para a URL na DefaultUrl propriedade .

ASP.NET adiciona automaticamente a URL de retorno quando o navegador é redirecionado para a página de logon.

Por padrão, a ReturnUrl variável deve se referir a uma página dentro do aplicativo atual. Se ReturnUrl se referir a uma página em um aplicativo diferente ou em um servidor diferente, os RedirectFromLoginPage métodos redirecionarão para a URL na DefaultUrl propriedade . Se você quiser permitir redirecionamentos para uma página fora do aplicativo atual, defina a EnableCrossAppRedirects propriedade como true usando o enableCrossAppRedirects atributo do elemento de configuração de formulários .

Importante

Definir a EnableCrossAppRedirects propriedade como true para permitir redirecionamentos entre aplicativos é uma possível ameaça à segurança. Para obter mais informações, consulte a propriedade EnableCrossAppRedirects.

Se a CookiesSupported propriedade for true, e a ReturnUrl variável estiver dentro do aplicativo atual ou a EnableCrossAppRedirects propriedade for true, o RedirectFromLoginPage método emitirá um tíquete de autenticação e a colocará no cookie padrão usando o SetAuthCookie método .

Se CookiesSupported for false e o caminho de redirecionamento for para uma URL no aplicativo atual, o tíquete será emitido como parte da URL de redirecionamento. Se CookiesSupported for false, EnableCrossAppRedirects for truee a URL de redirecionamento não se referir a uma página dentro do aplicativo atual, o RedirectFromLoginPage método emitirá um tíquete de autenticação e o colocará na QueryString propriedade .

Confira também

Aplica-se a

RedirectFromLoginPage(String, Boolean, String)

Redireciona um usuário autenticado de volta para a URL solicitada originalmente ou para a URL padrão usando o caminho do cookie especificado para o cookie de autenticação de formulários.

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)

Parâmetros

userName
String

O nome de usuário autenticado.

createPersistentCookie
Boolean

true para criar um cookie durável (um que seja salvo entre as sessões do navegador); caso contrário, false.

strCookiePath
String

O caminho do cookie para que o tíquete de autenticação de formulários.

Exceções

A URL de retorno especificada na cadeia de caracteres de consulta contém um protocolo diferente de HTTP: ou HTTPS:.

Comentários

O RedirectFromLoginPage método redireciona para a URL de retorno especificada na cadeia de caracteres de consulta usando o nome da ReturnURL variável. Por exemplo, na URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx, o RedirectFromLoginPage método redireciona para a URL caller.aspxde retorno . Se a ReturnURL variável não existir, o RedirectFromLoginPage método redirecionará para a URL na DefaultUrl propriedade .

ASP.NET adiciona automaticamente a URL de retorno quando o navegador é redirecionado para a página de logon.

Por padrão, a ReturnUrl variável deve se referir a uma página dentro do aplicativo atual. Se ReturnUrl se referir a uma página em um aplicativo diferente ou em um servidor diferente, o RedirectFromLoginPage método redirecionará para a URL na DefaultUrl propriedade . Se você quiser permitir redirecionamentos para uma página fora do aplicativo atual, defina a EnableCrossAppRedirects propriedade como true usando o enableCrossAppRedirects atributo do elemento de configuração de formulários .

Importante

Definir a EnableCrossAppRedirects propriedade como true para permitir redirecionamentos entre aplicativos é uma possível ameaça à segurança. Para obter mais informações, consulte a propriedade EnableCrossAppRedirects.

Se a CookiesSupported propriedade for true, e a ReturnUrl variável estiver dentro do aplicativo atual ou a EnableCrossAppRedirects propriedade for true, o RedirectFromLoginPage método emitirá um tíquete de autenticação e a colocará no cookie especificado pelo strCookiePath parâmetro usando o SetAuthCookie método .

Se CookiesSupported for false e o caminho de redirecionamento for para uma URL no aplicativo atual, o tíquete será emitido como parte da URL de redirecionamento. Se CookiesSupported for false, EnableCrossAppRedirects for truee a URL de redirecionamento não se referir a uma página dentro do aplicativo atual, o RedirectFromLoginPage método emitirá um tíquete de autenticação e o colocará na QueryString propriedade .

Confira também

Aplica-se a