FormsAuthenticationTicket Konstruktory
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Inicjuje nowe wystąpienie klasy FormsAuthenticationTicket.
Przeciążenia
FormsAuthenticationTicket(String, Boolean, Int32) |
Inicjuje FormsAuthenticationTicket nowe wystąpienie klasy przy użyciu nazwy pliku cookie i informacji o wygaśnięciu. |
FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String) |
Inicjuje FormsAuthenticationTicket nowe wystąpienie klasy z nazwą pliku cookie, wersją, datą wygaśnięcia, datą wydania, trwałością i danymi specyficznymi dla użytkownika. Ścieżka pliku cookie jest ustawiona na wartość domyślną ustanowioną w pliku konfiguracji aplikacji. |
FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String, String) |
Inicjuje FormsAuthenticationTicket nowe wystąpienie klasy z nazwą pliku cookie, wersją, ścieżką katalogu, datą wydania, datą wygaśnięcia, trwałością i danymi zdefiniowanymi przez użytkownika. |
FormsAuthenticationTicket(String, Boolean, Int32)
Inicjuje FormsAuthenticationTicket nowe wystąpienie klasy przy użyciu nazwy pliku cookie i informacji o wygaśnięciu.
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)
Parametry
- name
- String
Nazwa użytkownika skojarzona z biletem.
- isPersistent
- Boolean
true
jeśli bilet będzie przechowywany w trwałym pliku cookie (zapisanym w sesjach przeglądarki); w przeciwnym razie , false
. Jeśli bilet jest przechowywany w adresie URL, ta wartość jest ignorowana.
- timeout
- Int32
Czas, w minutach, dla którego bilet uwierzytelniania jest prawidłowy.
Uwagi
FormsAuthenticationTicket Obiekt utworzony przez ten konstruktor będzie miał CookiePath wartość ustawioną na wartość FormsCookiePath właściwości, Version wartość 2, wartość bieżącej lokalnej daty i godziny, IssueDateUserData wartość pustego ciągu ("") oraz Expiration wartość ustawioną na bieżącą lokalną datę i godzinę oraz wartość parametrutimeout
.
Zobacz też
Dotyczy
FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String)
Inicjuje FormsAuthenticationTicket nowe wystąpienie klasy z nazwą pliku cookie, wersją, datą wygaśnięcia, datą wydania, trwałością i danymi specyficznymi dla użytkownika. Ścieżka pliku cookie jest ustawiona na wartość domyślną ustanowioną w pliku konfiguracji aplikacji.
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)
Parametry
- version
- Int32
Numer wersji biletu.
- name
- String
Nazwa użytkownika skojarzona z biletem.
- issueDate
- DateTime
Lokalna data i godzina wystawienia biletu.
- expiration
- DateTime
Lokalna data i godzina wygaśnięcia biletu.
- isPersistent
- Boolean
true
jeśli bilet będzie przechowywany w trwałym pliku cookie (zapisanym w sesjach przeglądarki); w przeciwnym razie , false
. Jeśli bilet jest przechowywany w adresie URL, ta wartość jest ignorowana.
- userData
- String
Dane specyficzne dla użytkownika, które mają być przechowywane za pomocą biletu.
Uwagi
FormsAuthenticationTicket Obiekt utworzony przez ten konstruktor będzie miał wartość ustawioną CookiePath na wartość .FormsCookiePath
Uwaga
Nie można stosować null
parametru userData
.
Zobacz też
Dotyczy
FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String, String)
Inicjuje FormsAuthenticationTicket nowe wystąpienie klasy z nazwą pliku cookie, wersją, ścieżką katalogu, datą wydania, datą wygaśnięcia, trwałością i danymi zdefiniowanymi przez użytkownika.
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)
Parametry
- version
- Int32
Numer wersji biletu.
- name
- String
Nazwa użytkownika skojarzona z biletem.
- issueDate
- DateTime
Lokalna data i godzina wystawienia biletu.
- expiration
- DateTime
Lokalna data i godzina wygaśnięcia biletu.
- isPersistent
- Boolean
true
jeśli bilet będzie przechowywany w trwałym pliku cookie (zapisanym w sesjach przeglądarki); w przeciwnym razie , false
. Jeśli bilet jest przechowywany w adresie URL, ta wartość jest ignorowana.
- userData
- String
Dane specyficzne dla użytkownika, które mają być przechowywane za pomocą biletu.
- cookiePath
- String
Ścieżka biletu w przypadku przechowywania w pliku cookie.
Przykłady
Poniższy przykład kodu przechowuje wynik Encrypt metody w pliku cookie przy użyciu FormsCookieName właściwości i przekierowuje użytkownika do adresu URL zwróconego z GetRedirectUrl metody .
Ważne
Ten przykład zawiera pole tekstowe, które akceptuje dane wejściowe użytkownika, co jest potencjalnym zagrożeniem bezpieczeństwa. Domyślnie ASP.NET strony sieci Web weryfikują, czy dane wejściowe użytkownika nie zawierają skryptów ani elementów HTML. Aby uzyskać więcej informacji, zobacz Omówienie luk w zabezpieczeniach skryptów.
<%@ 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>
Uwagi
Uwaga
Nie można stosować null
parametru userData
.