Partager via


FormsAuthenticationTicket Constructeurs

Définition

Initialise une nouvelle instance de la classe FormsAuthenticationTicket.

Surcharges

FormsAuthenticationTicket(String, Boolean, Int32)

Initialise une nouvelle instance de la classe FormsAuthenticationTicket avec le nom d'un cookie et les informations d'expiration.

FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String)

Initialise une nouvelle instance de la classe FormsAuthenticationTicket avec le nom du cookie, la version, la date d'expiration, la date d'émission, la persistance et d'autres données spécifiques à l'utilisateur. Le chemin d'accès au cookie correspond à la valeur par défaut définie dans le fichier de configuration de l'application.

FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String, String)

Initialise une nouvelle instance de la classe FormsAuthenticationTicket avec le nom du cookie, la version, le chemin d'accès au répertoire, la date d'expiration, la date d'émission, la persistance et d'autres données définies par l'utilisateur.

FormsAuthenticationTicket(String, Boolean, Int32)

Initialise une nouvelle instance de la classe FormsAuthenticationTicket avec le nom d'un cookie et les informations d'expiration.

public:
 FormsAuthenticationTicket(System::String ^ name, bool isPersistent, int timeout);
public FormsAuthenticationTicket (string name, bool isPersistent, int timeout);
new System.Web.Security.FormsAuthenticationTicket : string * bool * int -> System.Web.Security.FormsAuthenticationTicket
Public Sub New (name As String, isPersistent As Boolean, timeout As Integer)

Paramètres

name
String

Nom d'utilisateur associé au ticket.

isPersistent
Boolean

true si le ticket sera stocké dans un cookie persistant (enregistré d'une session de navigation à l'autre) ; sinon, false. Si le ticket est stocké dans l'URL, cette valeur est ignorée.

timeout
Int32

La durée, en minutes, pendant laquelle le ticket d'authentification est valide.

Remarques

L’objet FormsAuthenticationTicket créé par ce constructeur aura une CookiePath valeur définie sur la valeur de la FormsCookiePath propriété, une Version valeur de 2, une IssueDate valeur de la date et de l’heure locales actuelles, une UserData valeur d’une chaîne vide («  »), et une Expiration valeur définie sur la date et l’heure locales actuelles, ainsi que la valeur du timeout paramètre.

Voir aussi

S’applique à

FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String)

Initialise une nouvelle instance de la classe FormsAuthenticationTicket avec le nom du cookie, la version, la date d'expiration, la date d'émission, la persistance et d'autres données spécifiques à l'utilisateur. Le chemin d'accès au cookie correspond à la valeur par défaut définie dans le fichier de configuration de l'application.

public:
 FormsAuthenticationTicket(int version, System::String ^ name, DateTime issueDate, DateTime expiration, bool isPersistent, System::String ^ userData);
public FormsAuthenticationTicket (int version, string name, DateTime issueDate, DateTime expiration, bool isPersistent, string userData);
new System.Web.Security.FormsAuthenticationTicket : int * string * DateTime * DateTime * bool * string -> System.Web.Security.FormsAuthenticationTicket
Public Sub New (version As Integer, name As String, issueDate As DateTime, expiration As DateTime, isPersistent As Boolean, userData As String)

Paramètres

version
Int32

Numéro de version du ticket.

name
String

Nom d'utilisateur associé au ticket.

issueDate
DateTime

Date et heure d'émission du ticket.

expiration
DateTime

Date et heure d'expiration du ticket.

isPersistent
Boolean

true si le ticket sera stocké dans un cookie persistant (enregistré d'une session de navigation à l'autre) ; sinon, false. Si le ticket est stocké dans l'URL, cette valeur est ignorée.

userData
String

Données spécifiques à l'utilisateur à stocker dans le cookie.

Remarques

L’objet FormsAuthenticationTicket créé par ce constructeur aura une CookiePath valeur définie sur la valeur du FormsCookiePath.

Notes

Le paramètre userData ne peut pas avoir la valeur null.

Voir aussi

S’applique à

FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String, String)

Initialise une nouvelle instance de la classe FormsAuthenticationTicket avec le nom du cookie, la version, le chemin d'accès au répertoire, la date d'expiration, la date d'émission, la persistance et d'autres données définies par l'utilisateur.

public:
 FormsAuthenticationTicket(int version, System::String ^ name, DateTime issueDate, DateTime expiration, bool isPersistent, System::String ^ userData, System::String ^ cookiePath);
public FormsAuthenticationTicket (int version, string name, DateTime issueDate, DateTime expiration, bool isPersistent, string userData, string cookiePath);
new System.Web.Security.FormsAuthenticationTicket : int * string * DateTime * DateTime * bool * string * string -> System.Web.Security.FormsAuthenticationTicket
Public Sub New (version As Integer, name As String, issueDate As DateTime, expiration As DateTime, isPersistent As Boolean, userData As String, cookiePath As String)

Paramètres

version
Int32

Numéro de version du ticket.

name
String

Nom d'utilisateur associé au ticket.

issueDate
DateTime

Date et heure d'émission du ticket.

expiration
DateTime

Date et heure d'expiration du ticket.

isPersistent
Boolean

true si le ticket sera stocké dans un cookie persistant (enregistré d'une session de navigation à l'autre) ; sinon, false. Si le ticket est stocké dans l'URL, cette valeur est ignorée.

userData
String

Données spécifiques à l'utilisateur à stocker dans le cookie.

cookiePath
String

Chemin d'accès du ticket lorsqu'il est stocké dans un cookie.

Exemples

L’exemple de code suivant stocke le résultat de la Encrypt méthode dans un cookie à l’aide de la FormsCookieName propriété et redirige l’utilisateur vers l’URL retournée par la GetRedirectUrl méthode.

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">

  private void Login_Click(Object sender, EventArgs e)
  {
    // Create a custom FormsAuthenticationTicket containing
    // application specific data for the user.

    string username     = UserNameTextBox.Text;
    string password     = UserPassTextBox.Text;
    bool   isPersistent = false;

    if (Membership.ValidateUser(username, password))
    {
      string userData = "ApplicationSpecific data for this user.";

      FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
        username,
        DateTime.Now,
        DateTime.Now.AddMinutes(30),
        isPersistent,
        userData,
        FormsAuthentication.FormsCookiePath);

      // Encrypt the ticket.
      string encTicket = FormsAuthentication.Encrypt(ticket);

      // Create the cookie.
      Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName, encTicket));

      // Redirect back to original URL.
      Response.Redirect(FormsAuthentication.GetRedirectUrl(username, isPersistent));
    }
    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>Forms Authentication Login</title>
</head>
<body>
    <form id="form1" runat="server">
        <span style="BACKGROUND: #80ff80; font-weight:bold"> 
            Login Page
        </span> 
        <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
        <table border="0">
            <tbody>
                <tr>
                    <td>Username:</td>
                    <td><asp:TextBox id="UserNameTextBox" runat="server" /></td>
                    <td>
                      <asp:RequiredFieldValidator id="RequiredFieldValidator1" 
                                                  runat="server" ErrorMessage="*" 
                                                  Display="Static" 
                                                  ControlToValidate="UserNameTextBox" />
                    </td>
                </tr>
                <tr>
                    <td>Password:</td>
                    <td><asp:TextBox id="UserPassTextBox" TextMode="Password" runat="server" /></td>
                    <td>
                      <asp:RequiredFieldValidator id="RequiredFieldValidator2" 
                                                  runat="server" ErrorMessage="*" 
                                                  Display="Static" 
                                                  ControlToValidate="UserPassTextBox" />
                    </td>
                </tr>
            </tbody>
        </table>
        <input type="submit" value="Login" runat="server" onserverclick="Login_Click" />
    </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">

  Private Sub Login_Click(sender As Object, e As EventArgs)
  
    ' Create a custom FormsAuthenticationTicket containing
    ' application specific data for the user.

        Dim username As String = UserNameTextBox.Text
        Dim password As String = UserPassTextBox.Text
        Dim isPersistent As Boolean = False

    If Membership.ValidateUser(username, password) Then
    
      Dim userData As String = "ApplicationSpecific data for this user."

      Dim ticket As FormsAuthenticationTicket = New FormsAuthenticationTicket(1, _
        username, _
        DateTime.Now, _
        DateTime.Now.AddMinutes(30), _
        isPersistent, _
        userData, _
        FormsAuthentication.FormsCookiePath)

      ' Encrypt the ticket.
      Dim encTicket As String = FormsAuthentication.Encrypt(ticket)

      ' Create the cookie.
      Response.Cookies.Add(New HttpCookie(FormsAuthentication.FormsCookieName, encTicket))

      ' Redirect back to original URL.
      Response.Redirect(FormsAuthentication.GetRedirectUrl(username, isPersistent))
    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>Forms Authentication Login</title>
</head>
<body>
    <form id="form1" runat="server">
        <span style="BACKGROUND:#80ff80; font-weight:bold"> 
          Login Page
        </span> 
        <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
        <table border="0">
            <tbody>
                <tr>
                    <td>Username:</td>
                    <td><asp:TextBox id="UserNameTextBox" runat="server" /></td>
                    <td>
                      <asp:RequiredFieldValidator id="RequiredFieldValidator1" 
                                                  runat="server" ErrorMessage="*" 
                                                  Display="Static" 
                                                  ControlToValidate="UserNameTextBox" />
                    </td>
                </tr>
                <tr>
                    <td>Password:</td>
                    <td><asp:TextBox id="UserPassTextBox" TextMode="Password" runat="server" /></td>
                    <td>
                      <asp:RequiredFieldValidator id="RequiredFieldValidator2" 
                                                  runat="server" ErrorMessage="*" 
                                                  Display="Static" 
                                                  ControlToValidate="UserPassTextBox" />
                    </td>
                </tr>
            </tbody>
        </table>
        <input type="submit" value="Login" runat="server" onserverclick="Login_Click" />
    </form>
</body>
</html>

Remarques

Notes

Le paramètre userData ne peut pas avoir la valeur null.

Voir aussi

S’applique à