FormsAuthenticationTicket Costruttori
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inizializza una nuova istanza della classe FormsAuthenticationTicket.
Overload
FormsAuthenticationTicket(String, Boolean, Int32) |
Inizializza una nuova istanza della classe FormsAuthenticationTicket tramite il nome di un cookie e le informazioni sulla scadenza. |
FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String) |
Inizializza una nuova istanza della classe FormsAuthenticationTicket con nome, versione, data di scadenza, data di invio e persistenza del cookie e i dati specifici dell'utente. Il percorso del cookie è impostato sul valore predefinito stabilito nel file di configurazione dell'applicazione. |
FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String, String) |
Inizializza una nuova istanza della classe FormsAuthenticationTicket con nome, versione, percorso di directory, data di scadenza, data di invio e persistenza del cookie e i dati definiti dall'utente. |
FormsAuthenticationTicket(String, Boolean, Int32)
Inizializza una nuova istanza della classe FormsAuthenticationTicket tramite il nome di un cookie e le informazioni sulla scadenza.
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)
Parametri
- name
- String
Nome utente associato al ticket.
- isPersistent
- Boolean
true
se il ticket verrà memorizzato in un cookie persistente (salvato in più sessioni del browser); in caso contrario, false
. Se il ticket viene memorizzato nell'URL; questo valore viene ignorato.
- timeout
- Int32
Lasso di tempo espresso in minuti in cui è valido il ticket di autenticazione.
Commenti
L'oggetto FormsAuthenticationTicket creato da questo costruttore avrà un CookiePath valore impostato sul valore della proprietà, un valore pari a 2, IssueDate un Version valore della data e dell'ora locale corrente, UserData un valore di FormsCookiePath una stringa vuota (""), e un Expiration valore impostato sulla data e l'ora locale corrente e il valore timeout
del parametro.
Vedi anche
Si applica a
FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String)
Inizializza una nuova istanza della classe FormsAuthenticationTicket con nome, versione, data di scadenza, data di invio e persistenza del cookie e i dati specifici dell'utente. Il percorso del cookie è impostato sul valore predefinito stabilito nel file di configurazione dell'applicazione.
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)
Parametri
- version
- Int32
Numero di versione del ticket.
- name
- String
Nome utente associato al ticket.
- issueDate
- DateTime
Data e ora locali in cui il ticket è stato emesso.
- expiration
- DateTime
Data e ora locali in cui il ticket scade.
- isPersistent
- Boolean
true
se il ticket verrà memorizzato in un cookie persistente (salvato in più sessioni del browser); in caso contrario, false
. Se il ticket viene memorizzato nell'URL; questo valore viene ignorato.
- userData
- String
Dati specifici dell'utente da memorizzare nel ticket.
Commenti
L'oggetto FormsAuthenticationTicket creato da questo costruttore avrà un CookiePath valore impostato sul valore di FormsCookiePath.
Nota
Il parametro userData
non può essere null
.
Vedi anche
Si applica a
FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String, String)
Inizializza una nuova istanza della classe FormsAuthenticationTicket con nome, versione, percorso di directory, data di scadenza, data di invio e persistenza del cookie e i dati definiti dall'utente.
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)
Parametri
- version
- Int32
Numero di versione del ticket.
- name
- String
Nome utente associato al ticket.
- issueDate
- DateTime
Data e ora locali in cui il ticket è stato emesso.
- expiration
- DateTime
Data e ora locali in cui il ticket scade.
- isPersistent
- Boolean
true
se il ticket verrà memorizzato in un cookie persistente (salvato in più sessioni del browser); in caso contrario, false
. Se il ticket viene memorizzato nell'URL; questo valore viene ignorato.
- userData
- String
Dati specifici dell'utente da memorizzare nel ticket.
- cookiePath
- String
Percorso del ticket quando è memorizzato in un cookie.
Esempio
L'esempio di codice seguente archivia il risultato del Encrypt metodo in un cookie usando la FormsCookieName proprietà e reindirizza l'utente all'URL restituito dal GetRedirectUrl metodo .
Importante
Questo esempio contiene una casella di testo che accetta l'input utente, ovvero una potenziale minaccia di sicurezza. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite 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>
Commenti
Nota
Il parametro userData
non può essere null
.