FormsAuthentication.RedirectFromLoginPage Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Redirige un utilisateur authentifié vers l'URL demandée à l'origine ou l'URL par défaut.
Surcharges
RedirectFromLoginPage(String, Boolean) |
Redirige un utilisateur authentifié vers l'URL demandée à l'origine ou l'URL par défaut. |
RedirectFromLoginPage(String, Boolean, String) |
Redirige un utilisateur authentifié vers l'URL demandée à l'origine ou l'URL par défaut à l'aide du chemin d'accès spécifié pour le cookie d'authentification par formulaire. |
RedirectFromLoginPage(String, Boolean)
Redirige un utilisateur authentifié vers l'URL demandée à l'origine ou l'URL par défaut.
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)
Paramètres
- userName
- String
Nom d'utilisateur authentifié.
- createPersistentCookie
- Boolean
true
pour créer un cookie persistant (enregistré d'une session de navigation à l'autre) ; sinon, false
.
Exceptions
L'URL de renvoi spécifiée dans la chaîne de requête contient un protocole autre que HTTP: ou HTTPS:.
Exemples
L’exemple de code suivant redirige les utilisateurs validés vers l’URL initialement demandée ou le DefaultUrl. L’exemple de code utilise ASP.NET appartenance pour valider les utilisateurs. Pour plus d’informations sur l’appartenance ASP.NET, consultez Gestion des utilisateurs à l’aide de l’appartenance.
Important
Cet exemple contient une zone de texte qui accepte l’entrée utilisateur, qui est une menace de sécurité potentielle. Par défaut, les pages web ASP.NET vérifient que l’entrée d’utilisateur n’inclut pas de script ou d’éléments HTML. Pour plus d’informations, consultez Vue d’ensemble des attaques 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>
Remarques
La RedirectFromLoginPage méthode redirige vers l’URL spécifiée dans la chaîne de requête à l’aide du nom de la ReturnURL
variable. Par exemple, dans l’URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx
, la RedirectFromLoginPage méthode redirige vers l’URL caller.aspx
de retour . Si la ReturnURL
variable n’existe pas, la RedirectFromLoginPage méthode redirige vers l’URL de la DefaultUrl propriété .
ASP.NET ajoute automatiquement l’URL de retour lorsque le navigateur est redirigé vers la page de connexion.
Par défaut, la ReturnUrl
variable doit faire référence à une page dans l’application actuelle. Si ReturnUrl
fait référence à une page dans une autre application ou sur un autre serveur, les RedirectFromLoginPage méthodes redirigent vers l’URL dans la DefaultUrl propriété . Si vous souhaitez autoriser les redirections vers une page en dehors de l’application actuelle, vous devez définir la EnableCrossAppRedirects propriété sur à l’aide true
de l’attribut enableCrossAppRedirects
de l’élément de configuration forms .
Important
Définir la EnableCrossAppRedirects propriété sur true
pour autoriser les redirections entre applications est une menace de sécurité potentielle. Pour plus d'informations, consultez la propriété EnableCrossAppRedirects.
Si la CookiesSupported propriété est true
, et que la ReturnUrl
variable se trouve dans l’application actuelle ou que la EnableCrossAppRedirects propriété est true
, la RedirectFromLoginPage méthode émet un ticket d’authentification et le place dans le cookie par défaut à l’aide de la SetAuthCookie méthode .
Si CookiesSupported est false
et que le chemin de redirection est vers une URL dans l’application actuelle, le ticket est émis dans le cadre de l’URL de redirection. Si CookiesSupported a la valeur false
, EnableCrossAppRedirects est true
et que l’URL de redirection ne fait pas référence à une page dans l’application actuelle, la RedirectFromLoginPage méthode émet un ticket d’authentification et le place dans la QueryString propriété .
Voir aussi
S’applique à
RedirectFromLoginPage(String, Boolean, String)
Redirige un utilisateur authentifié vers l'URL demandée à l'origine ou l'URL par défaut à l'aide du chemin d'accès spécifié pour le cookie d'authentification par formulaire.
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)
Paramètres
- userName
- String
Nom d'utilisateur authentifié.
- createPersistentCookie
- Boolean
true
pour créer un cookie persistant (enregistré d'une session de navigation à l'autre) ; sinon, false
.
- strCookiePath
- String
Chemin d'accès au cookie pour le ticket d'authentification par formulaire.
Exceptions
L'URL de renvoi spécifiée dans la chaîne de requête contient un protocole autre que HTTP: ou HTTPS:.
Remarques
La RedirectFromLoginPage méthode redirige vers l’URL de retour spécifiée dans la chaîne de requête à l’aide du nom de la ReturnURL
variable. Par exemple, dans l’URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx
, la RedirectFromLoginPage méthode redirige vers l’URL caller.aspx
de retour . Si la ReturnURL
variable n’existe pas, la RedirectFromLoginPage méthode redirige vers l’URL de la DefaultUrl propriété .
ASP.NET ajoute automatiquement l’URL de retour lorsque le navigateur est redirigé vers la page de connexion.
Par défaut, la ReturnUrl
variable doit faire référence à une page dans l’application actuelle. Si ReturnUrl
fait référence à une page dans une autre application ou sur un autre serveur, la RedirectFromLoginPage méthode redirige vers l’URL dans la DefaultUrl propriété . Si vous souhaitez autoriser les redirections vers une page en dehors de l’application actuelle, vous devez définir la EnableCrossAppRedirects propriété sur à l’aide true
de l’attribut enableCrossAppRedirects
de l’élément de configuration forms .
Important
Définir la EnableCrossAppRedirects propriété sur true
pour autoriser les redirections entre applications est une menace de sécurité potentielle. Pour plus d'informations, consultez la propriété EnableCrossAppRedirects.
Si la propriété a true
la CookiesSupported valeur et que la ReturnUrl
variable se trouve dans l’application actuelle ou que la EnableCrossAppRedirects propriété est true
, la RedirectFromLoginPage méthode émet un ticket d’authentification et le place dans le cookie spécifié par le paramètre à l’aide strCookiePath
de la SetAuthCookie méthode .
Si CookiesSupported est false
et que le chemin de redirection est vers une URL dans l’application actuelle, le ticket est émis dans le cadre de l’URL de redirection. Si CookiesSupported a la valeur false
, EnableCrossAppRedirects est true
et que l’URL de redirection ne fait pas référence à une page dans l’application actuelle, la RedirectFromLoginPage méthode émet un ticket d’authentification et le place dans la QueryString propriété .