FormsAuthentication.RedirectFromLoginPage Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Redirige al usuario autenticado hacia la dirección URL originalmente solicitada o a la dirección URL predeterminada.
Sobrecargas
RedirectFromLoginPage(String, Boolean) |
Redirige al usuario autenticado hacia la dirección URL originalmente solicitada o a la dirección URL predeterminada. |
RedirectFromLoginPage(String, Boolean, String) |
Redirige a un usuario autenticado a la dirección URL originalmente solicitada o la dirección URL predeterminada utilizando la ruta de acceso de cookies especificada para la cookie de autenticación de formularios. |
RedirectFromLoginPage(String, Boolean)
Redirige al usuario autenticado hacia la dirección URL originalmente solicitada o a la dirección URL predeterminada.
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
Nombre del usuario autenticado.
- createPersistentCookie
- Boolean
true
para crear una cookie duradera (aquella que se guarda en cada sesión del explorador); en caso contrario, false
.
Excepciones
La dirección URL devuelta especificada en la cadena de consulta contiene un protocolo que no es ni HTTP: ni HTTPS:.
Ejemplos
En el ejemplo de código siguiente se redirige a los usuarios validados a la dirección URL solicitada originalmente o a DefaultUrl. En el ejemplo de código se usa ASP.NET pertenencia para validar a los usuarios. Para obtener más información sobre ASP.NET pertenencia, consulte Administración de usuarios mediante pertenencia.
Importante
Este ejemplo contiene un cuadro de texto que acepta la entrada del usuario, que es una amenaza de seguridad potencial. De forma predeterminada, ASP.NET Web Pages valida que los datos proporcionados por el usuario no incluyen elementos HTML ni de script. Para más información, consulte Información general sobre los ataques mediante scripts.
<%@ 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>
Comentarios
El RedirectFromLoginPage método redirige a la dirección URL especificada en la cadena de consulta mediante el nombre de la ReturnURL
variable. Por ejemplo, en la dirección URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx
, el RedirectFromLoginPage método redirige a la dirección URL caller.aspx
de retorno . Si la ReturnURL
variable no existe, el RedirectFromLoginPage método redirige a la dirección URL de la DefaultUrl propiedad .
ASP.NET agrega automáticamente la dirección URL de retorno cuando se redirige el explorador a la página de inicio de sesión.
De forma predeterminada, la ReturnUrl
variable debe hacer referencia a una página dentro de la aplicación actual. Si ReturnUrl
hace referencia a una página de una aplicación diferente o en un servidor diferente, los RedirectFromLoginPage métodos redirigen a la dirección URL de la DefaultUrl propiedad . Si desea permitir redireccionamientos a una página fuera de la aplicación actual, debe establecer la EnableCrossAppRedirects propiedad true
en mediante el enableCrossAppRedirects
atributo del elemento de configuración de formularios .
Importante
Establecer la EnableCrossAppRedirects propiedad en true
para permitir redireccionamientos entre aplicaciones es una amenaza de seguridad potencial. Para obtener más información, vea la propiedad EnableCrossAppRedirects.
Si la CookiesSupported propiedad es true
y la ReturnUrl
variable está dentro de la aplicación actual o la EnableCrossAppRedirects propiedad es true
, el RedirectFromLoginPage método emite un vale de autenticación y lo coloca en la cookie predeterminada mediante el SetAuthCookie método .
Si CookiesSupported es false
y la ruta de acceso de redireccionamiento es a una dirección URL de la aplicación actual, el vale se emite como parte de la dirección URL de redireccionamiento. Si CookiesSupported es , EnableCrossAppRedirects es true
false
y la dirección URL de redireccionamiento no hace referencia a una página dentro de la aplicación actual, el RedirectFromLoginPage método emite un vale de autenticación y lo coloca en la QueryString propiedad .
Consulte también
Se aplica a
RedirectFromLoginPage(String, Boolean, String)
Redirige a un usuario autenticado a la dirección URL originalmente solicitada o la dirección URL predeterminada utilizando la ruta de acceso de cookies especificada para la cookie de autenticación de formularios.
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
Nombre del usuario autenticado.
- createPersistentCookie
- Boolean
true
para crear una cookie duradera (aquella que se guarda en cada sesión del explorador); en caso contrario, false
.
- strCookiePath
- String
Ruta de cookies de acceso para el vale de autenticación de formularios.
Excepciones
La dirección URL devuelta especificada en la cadena de consulta contiene un protocolo que no es ni HTTP: ni HTTPS:.
Comentarios
El RedirectFromLoginPage método redirige a la dirección URL de retorno especificada en la cadena de consulta con el nombre de la ReturnURL
variable. Por ejemplo, en la dirección URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx
, el RedirectFromLoginPage método redirige a la dirección URL caller.aspx
de retorno . Si la ReturnURL
variable no existe, el RedirectFromLoginPage método redirige a la dirección URL de la DefaultUrl propiedad .
ASP.NET agrega automáticamente la dirección URL de retorno cuando se redirige el explorador a la página de inicio de sesión.
De forma predeterminada, la ReturnUrl
variable debe hacer referencia a una página dentro de la aplicación actual. Si ReturnUrl
hace referencia a una página de una aplicación diferente o en un servidor diferente, el RedirectFromLoginPage método redirige a la dirección URL de la DefaultUrl propiedad . Si desea permitir redireccionamientos a una página fuera de la aplicación actual, debe establecer la EnableCrossAppRedirects propiedad true
en mediante el enableCrossAppRedirects
atributo del elemento de configuración de formularios .
Importante
Establecer la EnableCrossAppRedirects propiedad en true
para permitir redireccionamientos entre aplicaciones es una amenaza de seguridad potencial. Para obtener más información, vea la propiedad EnableCrossAppRedirects.
Si la CookiesSupported propiedad es true
y la ReturnUrl
variable está dentro de la aplicación actual o la EnableCrossAppRedirects propiedad es true
, el RedirectFromLoginPage método emite un vale de autenticación y lo coloca en la cookie especificada por el strCookiePath
parámetro mediante el SetAuthCookie método .
Si CookiesSupported es false
y la ruta de acceso de redireccionamiento es a una dirección URL de la aplicación actual, el vale se emite como parte de la dirección URL de redireccionamiento. Si CookiesSupported es , EnableCrossAppRedirects es true
false
y la dirección URL de redireccionamiento no hace referencia a una página dentro de la aplicación actual, el RedirectFromLoginPage método emite un vale de autenticación y lo coloca en la QueryString propiedad .