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 demandée à l’origine 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 active. Si ReturnUrl
elle fait référence à une page d’une autre application ou sur un autre serveur, les RedirectFromLoginPage méthodes redirigent vers l’URL de 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 true
l’attribut enableCrossAppRedirects
de l’élément de configuration de formulaires .
Important
La définition de la EnableCrossAppRedirects propriété pour true
autoriser les redirections inter-applications est une menace de sécurité potentielle. Pour plus d'informations, consultez la propriété EnableCrossAppRedirects.
Si la propriété est true
, et que la ReturnUrl
CookiesSupported 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 la place dans le cookie par défaut à l’aide de la SetAuthCookie méthode.
Si CookiesSupported c’est false
et si 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 c’est le cas, EnableCrossAppRedirects c’est-à-dire false``true
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 la 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 active. Si ReturnUrl
elle fait référence à une page d’une autre application ou sur un autre serveur, la RedirectFromLoginPage méthode redirige vers l’URL de 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 true
l’attribut enableCrossAppRedirects
de l’élément de configuration de formulaires .
Important
La définition de la EnableCrossAppRedirects propriété pour true
autoriser les redirections inter-applications est une menace de sécurité potentielle. Pour plus d'informations, consultez la propriété EnableCrossAppRedirects.
Si la propriété est true
, et que la ReturnUrl
CookiesSupported variable se trouve dans l’application actuelle ou EnableCrossAppRedirects que la propriété est true
, la RedirectFromLoginPage méthode émet un ticket d’authentification et la place dans le cookie spécifié par le paramètre à l’aide de la strCookiePath
SetAuthCookie méthode.
Si CookiesSupported c’est false
et si 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 c’est le cas, EnableCrossAppRedirects c’est-à-dire false``true
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 la place dans la QueryString propriété.