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

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > 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) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



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

辞書ショートカット

すべての辞書の索引

「FormsAuthenticationTicket クラス」の関連用語

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

   

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



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

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

©2025 GRAS Group, Inc.RSS