FormsAuthentication.RedirectFromLoginPage Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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.aspx
de 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 true
e 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.aspx
de 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 true
e 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 .