FormsAuthenticationTicketとは? わかりやすく解説

FormsAuthenticationTicket クラス

フォーム認証ユーザー識別するために使用されるチケットプロパティと値へのアクセス提供します。このクラス継承できません。

名前空間: System.Web.Security
アセンブリ: System.Web (system.web.dll 内)
構文構文

<SerializableAttribute> _
Public NotInheritable Class
 FormsAuthenticationTicket
Dim instance As FormsAuthenticationTicket
[SerializableAttribute] 
public sealed class FormsAuthenticationTicket
[SerializableAttribute] 
public ref class FormsAuthenticationTicket
 sealed
/** @attribute SerializableAttribute() */ 
public final class FormsAuthenticationTicket
SerializableAttribute 
public final class FormsAuthenticationTicket
解説解説

FormsAuthenticationTicket クラスは、フォーム認証認証済みユーザー識別するのに使用される認証チケットを表すオブジェクト作成するために使用されます。フォーム認証チケットプロパティと値は、Cookie または URL格納される暗号文字列に変換されたり、またこれらの暗号文字列から元に戻したできます

FormsAuthentication クラスは、FormsAuthenticationTicket から Cookie または URL格納できる文字列値を作成する Encrypt メソッド提供しますまた、FormsAuthentication クラスには、フォーム認証 Cookie または URL から取得した暗号化された認証チケットから FormsAuthenticationTicket オブジェクト作成する Decrypt メソッドあります

現在の認証済みユーザーFormsAuthenticationTicket には、FormsIdentity クラスTicket プロパティ使用してアクセスできます現在の FormsIdentity オブジェクトには、現在の UserIdentity プロパティFormsIdentity 型としてキャストすることによりアクセスできます

使用例使用例

FormsCookieName を使用して Encrypt メソッド結果Cookie格納し、GetRedirectUrl メソッドから返される URLユーザーリダイレクトするコード例次に示します

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security"
 %>
<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
 = PersistCheckBox.Checked

    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>
<head>
    <title>Forms Authentication Login</title>
</head>
<body>
    <form runat="server">
        <span style="BACKGROUND: #80ff80"> 
          <h3>Login Page</h3>
        </span> 
        <asp:Label id="Msg" ForeColor="maroon"
 runat="server" /><P>
        <table border=0>
            <tbody>
                <tr>
                    <td>Username:</td>
                    <td><asp:TextBox id="UserNameTextBox"
 type="text" 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>
                <tr>
                    <td>Check here if this is
 <u>not</u><br>a public computer:</td>
                    <td><asp:CheckBox id="PersistCheckBox"
 runat="server" autopostback="true"
 /></td>
                </tr>
            </tbody>
        </table>
        <input type="submit" value="Login"
 runat="server" onserverclick="Login_Click"
 />
    </form>
</body>
</html>
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<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 = PersistCheckBox.Checked;

    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>
<head>
    <title>Forms Authentication Login</title>
</head>
<body>
    <form runat="server">
        <span style="BACKGROUND: #80ff80"> 
          <h3>Login Page</h3>
        </span> 
        <asp:Label id="Msg" ForeColor="maroon" runat="server"
 /><P>
        <table border=0>
            <tbody>
                <tr>
                    <td>Username:</td>
                    <td><asp:TextBox id="UserNameTextBox" type="text"
 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>
                <tr>
                    <td>Check here if this
 is <u>not</u><br>a public computer:</td>
                    <td><asp:CheckBox id="PersistCheckBox" runat="server"
 autopostback="true" /></td>
                </tr>
            </tbody>
        </table>
        <input type="submit" value="Login" runat="server"
 onserverclick="Login_Click" />
    </form>
</body>
</html>
継承階層継承階層
System.Object
  System.Web.Security.FormsAuthenticationTicket
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

FormsAuthenticationTicket コンストラクタ (Int32, String, DateTime, DateTime, Boolean, String)

Cookie 名、バージョン有効期限発行日時、永続性、およびユーザー固有のデータで FormsAuthenticationTicket クラス新しインスタンス初期化します。Cookie パスは、アプリケーション構成ファイル内で設定されている既定値なります

名前空間: System.Web.Security
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Sub New ( _
    version As Integer, _
    name As String, _
    issueDate As DateTime, _
    expiration As DateTime, _
    isPersistent As Boolean, _
    userData As String _
)
Dim version As Integer
Dim name As String
Dim issueDate As DateTime
Dim expiration As DateTime
Dim isPersistent As Boolean
Dim userData As String

Dim instance As New FormsAuthenticationTicket(version,
 name, issueDate, expiration, isPersistent, userData)
public FormsAuthenticationTicket (
    int version,
    string name,
    DateTime issueDate,
    DateTime expiration,
    bool isPersistent,
    string userData
)
public:
FormsAuthenticationTicket (
    int version, 
    String^ name, 
    DateTime issueDate, 
    DateTime expiration, 
    bool isPersistent, 
    String^ userData
)
public FormsAuthenticationTicket (
    int version, 
    String name, 
    DateTime issueDate, 
    DateTime expiration, 
    boolean isPersistent, 
    String userData
)
public function FormsAuthenticationTicket (
    version : int, 
    name : String, 
    issueDate : DateTime, 
    expiration : DateTime, 
    isPersistent : boolean, 
    userData : String
)

パラメータ

version

チケットバージョン番号

name

チケット関連付けられているユーザー名

issueDate

チケット発行されローカル日付と時刻

expiration

チケット有効期限が切れるローカル日付と時刻

isPersistent

チケットを、複数ブラウザ セッションわたって保存される永続的な Cookie格納する場合trueそれ以外場合falseチケットURL格納される場合には、この値は無視されます。

userData

チケット格納されるユーザー固有のデータ

解説解説

このコンストラクタ作成される FormsAuthenticationTicket オブジェクトの CookiePath 値は FormsCookiePath の値に設定されます。

メモメモ

userData パラメータnull 参照 (Visual Basic では Nothing) にすることはできません。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

FormsAuthenticationTicket コンストラクタ (Int32, String, DateTime, DateTime, Boolean, String, String)

Cookie 名、バージョンディレクトリ パス発行日時、有効期限永続性、およびユーザー定義のデータで FormsAuthenticationTicket クラス新しインスタンス初期化します。

名前空間: System.Web.Security
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Sub New ( _
    version As Integer, _
    name As String, _
    issueDate As DateTime, _
    expiration As DateTime, _
    isPersistent As Boolean, _
    userData As String, _
    cookiePath As String _
)
Dim version As Integer
Dim name As String
Dim issueDate As DateTime
Dim expiration As DateTime
Dim isPersistent As Boolean
Dim userData As String
Dim cookiePath As String

Dim instance As New FormsAuthenticationTicket(version,
 name, issueDate, expiration, isPersistent, userData, cookiePath)
public FormsAuthenticationTicket (
    int version,
    string name,
    DateTime issueDate,
    DateTime expiration,
    bool isPersistent,
    string userData,
    string cookiePath
)
public:
FormsAuthenticationTicket (
    int version, 
    String^ name, 
    DateTime issueDate, 
    DateTime expiration, 
    bool isPersistent, 
    String^ userData, 
    String^ cookiePath
)
public FormsAuthenticationTicket (
    int version, 
    String name, 
    DateTime issueDate, 
    DateTime expiration, 
    boolean isPersistent, 
    String userData, 
    String cookiePath
)
public function FormsAuthenticationTicket (
    version : int, 
    name : String, 
    issueDate : DateTime, 
    expiration : DateTime, 
    isPersistent : boolean, 
    userData : String, 
    cookiePath : String
)

パラメータ

version

チケットバージョン番号

name

チケット関連付けられているユーザー名

issueDate

チケット発行されローカル日付と時刻

expiration

チケット有効期限が切れるローカル日付と時刻

isPersistent

チケットを、複数ブラウザ セッションわたって保存される永続的な Cookie格納する場合trueそれ以外場合falseチケットURL格納される場合には、この値は無視されます。

userData

チケット格納されるユーザー固有のデータ

cookiePath

Cookie格納される場合チケットパス

解説解説
メモメモ

userData パラメータnull 参照 (Visual Basic では Nothing) にすることはできません。

使用例使用例

FormsCookieName プロパティ使用して Encrypt メソッド結果Cookie格納し、GetRedirectUrl メソッドから返される URLユーザーリダイレクトするコード例次に示します

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security"
 %>
<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
 = PersistCheckBox.Checked

    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>
<head>
    <title>Forms Authentication Login</title>
</head>
<body>
    <form runat="server">
        <span style="BACKGROUND: #80ff80"> 
          <h3>Login Page</h3>
        </span> 
        <asp:Label id="Msg" ForeColor="maroon"
 runat="server" /><P>
        <table border=0>
            <tbody>
                <tr>
                    <td>Username:</td>
                    <td><asp:TextBox id="UserNameTextBox"
 type="text" 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>
                <tr>
                    <td>Check here if this is
 <u>not</u><br>a public computer:</td>
                    <td><asp:CheckBox id="PersistCheckBox"
 runat="server" autopostback="true"
 /></td>
                </tr>
            </tbody>
        </table>
        <input type="submit" value="Login"
 runat="server" onserverclick="Login_Click"
 />
    </form>
</body>
</html>
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<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 = PersistCheckBox.Checked;

    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>
<head>
    <title>Forms Authentication Login</title>
</head>
<body>
    <form runat="server">
        <span style="BACKGROUND: #80ff80"> 
          <h3>Login Page</h3>
        </span> 
        <asp:Label id="Msg" ForeColor="maroon" runat="server"
 /><P>
        <table border=0>
            <tbody>
                <tr>
                    <td>Username:</td>
                    <td><asp:TextBox id="UserNameTextBox" type="text"
 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>
                <tr>
                    <td>Check here if this
 is <u>not</u><br>a public computer:</td>
                    <td><asp:CheckBox id="PersistCheckBox" runat="server"
 autopostback="true" /></td>
                </tr>
            </tbody>
        </table>
        <input type="submit" value="Login" runat="server"
 onserverclick="Login_Click" />
    </form>
</body>
</html>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
FormsAuthenticationTicket クラス
FormsAuthenticationTicket メンバ
System.Web.Security 名前空間
その他の技術情報
フォーム認証プロバイダ

FormsAuthenticationTicket コンストラクタ

FormsAuthenticationTicket クラス新しインスタンス初期化します。 フォーム認証プロバイダ
オーバーロードの一覧オーバーロードの一覧

名前 説明
FormsAuthenticationTicket (String, Boolean, Int32) Cookie 名と例外情報使用してFormsAuthenticationTicket クラス新しインスタンス初期化します。
FormsAuthenticationTicket (Int32, String, DateTime, DateTime, Boolean, String) Cookie 名、バージョン有効期限発行日時、永続性、およびユーザー固有のデータFormsAuthenticationTicket クラス新しインスタンス初期化します。Cookie パスは、アプリケーション構成ファイル内で設定されている既定値なります
FormsAuthenticationTicket (Int32, String, DateTime, DateTime, Boolean, String, String) Cookie 名、バージョンディレクトリ パス発行日時、有効期限永続性、およびユーザー定義のデータFormsAuthenticationTicket クラス新しインスタンス初期化します。
参照参照

関連項目

FormsAuthenticationTicket クラス
FormsAuthenticationTicket メンバ
System.Web.Security 名前空間

その他の技術情報

フォーム認証プロバイダ

FormsAuthenticationTicket コンストラクタ (String, Boolean, Int32)

Cookie 名と例外情報使用して、FormsAuthenticationTicket クラス新しインスタンス初期化します。

名前空間: System.Web.Security
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Sub New ( _
    name As String, _
    isPersistent As Boolean, _
    timeout As Integer _
)
Dim name As String
Dim isPersistent As Boolean
Dim timeout As Integer

Dim instance As New FormsAuthenticationTicket(name,
 isPersistent, timeout)
public FormsAuthenticationTicket (
    string name,
    bool isPersistent,
    int timeout
)
public:
FormsAuthenticationTicket (
    String^ name, 
    bool isPersistent, 
    int timeout
)
public FormsAuthenticationTicket (
    String name, 
    boolean isPersistent, 
    int timeout
)
public function FormsAuthenticationTicket (
    name : String, 
    isPersistent : boolean, 
    timeout : int
)

パラメータ

name

チケット関連付けられているユーザー名

isPersistent

チケットを、複数ブラウザ セッションわたって保存される永続的な Cookie格納する場合trueそれ以外場合falseチケットURL格納される場合には、この値は無視されます。

timeout

認証チケット有効期間 (分単位)。

解説解説

このコンストラクタ作成される FormsAuthenticationTicket オブジェクトでは、CookiePath 値は FormsCookiePath プロパティ値に、Version 値は 2 に、IssueDate 値は現在のローカル日時に、UserData 値は空の文字列 ("") に、および Expiration 値は現在のローカル日時timeout パラメータの値を加えた値に設定されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
FormsAuthenticationTicket クラス
FormsAuthenticationTicket メンバ
System.Web.Security 名前空間
その他の技術情報
フォーム認証プロバイダ

FormsAuthenticationTicket プロパティ


FormsAuthenticationTicket メソッド


FormsAuthenticationTicket メンバ

フォーム認証ユーザー識別するために使用されるチケットプロパティと値へのアクセス提供します。このクラス継承できません。

FormsAuthenticationTicket データ型公開されるメンバを以下の表に示します


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド FormsAuthenticationTicket オーバーロードされます。 FormsAuthenticationTicket クラス新しインスタンス初期化します。
パブリック プロパティパブリック プロパティ
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

FormsAuthenticationTicket クラス
System.Web.Security 名前空間

その他の技術情報

フォーム認証プロバイダ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「FormsAuthenticationTicket」の関連用語

FormsAuthenticationTicketのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



FormsAuthenticationTicketのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS