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

FormsAuthentication クラス

Web アプリケーションのフォーム認証サービスを管理します。このクラスは継承できません。

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

Public NotInheritable Class
 FormsAuthentication
Dim instance As FormsAuthentication
public sealed class FormsAuthentication
public ref class FormsAuthentication sealed
public final class FormsAuthentication
public final class FormsAuthentication
解説解説

フォーム認証を使用して、Windows 認証を必要としない Web アプリケーションに対してパスワードとユーザーの検証を提供できます。フォーム認証では、ユーザー情報は Membership データベースなどの外部データ ソースやアプリケーションの構成ファイルに格納されます。ユーザーが認証されると、フォーム認証は Cookie または URL に認証チケットを保持し、認証されたユーザーが要求ごとに資格情報を入力しないですむようにします。

フォーム認証は、authentication 構成要素の mode 属性を Forms に設定することにより有効になります。次の例のように、authorization 構成要素を使用して未知のユーザーからの要求をすべて拒否するように設定することによって、アプリケーションに対するすべての要求に、有効なユーザー認証チケットが含まれるように要求できます。

<system.web>
  <authentication mode="Forms">
    <forms loginUrl="login.aspx" />
  </authentication>
  <authorization>
    <deny user="?" />
  </authorization>
</system.web>

この例では、アプリケーションに含まれる ASP.NET ページに対するすべての要求に、フォーム認証によって提供される有効なユーザー名が必要になります。ユーザー名が存在しない場合、その要求は構成されている LoginUrl にリダイレクトされます。

FormsAuthentication クラスは、ユーザーを認証するアプリケーション コード内で使用できるメソッドとプロパティを提供します。RedirectToLoginPage メソッドは、アプリケーションにログインするユーザーに対して、構成された LoginUrl にブラウザをリダイレクトします。認証済みユーザーは、RedirectFromLoginPage メソッドによって、初めに要求された、保護されている URL または DefaultUrl にリダイレクトされます。また必要に応じて、フォーム認証チケットを管理できるメソッドもあります。

使用例使用例

次のコード例に、フォーム認証用に ASP.NET メンバシップ プロバイダを使用してすべてのユーザーを認証する ASP.NET アプリケーションの Web.config ファイルを示します。

<configuration>
  <connectionStrings>
    <add name="SqlServices" connectionString="Data Source=MySqlServer;Integrated
 Security=SSPI;Initial Catalog=aspnetdb;" />
  </connectionStrings>
  <system.web>
    <membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
      <providers>
        <add name="SqlProvider"
          type="System.Web.Security.SqlMembershipProvider"
          connectionStringName="SqlServices"
          enablePasswordRetrieval="false"
          enablePasswordReset="true"
          requiresQuestionAndAnswer="true"
          passwordFormat="Hashed"
          applicationName="/" />
      </providers>
    </membership>
  </system.web>
</configuration>

次のコード例では、フォーム認証と ASP.NET メンバシップを使用する ASP.NET アプリケーションのログイン ページを示しています。

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security"
 %>

<script runat="server">

Public Sub Login_OnClick(sender As
 Object, args As  EventArgs)

   If (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
 Then
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked)
   Else
     Msg.Text = "Login failed. Please check your user name and
 password and try again."
   End If

End Sub

</script>

<html>
<head>
  <title>Login</title>
</head>
<body>

<form runat="server">
  <h3>Login</h3>

  <asp:Label id="Msg" ForeColor="maroon"
 runat="server" /><P>

  Username: <asp:Textbox id="UsernameTextbox" runat="server"
 /><BR>
  Password: <asp:Textbox id="PasswordTextbox" runat="server"
 TextMode="Password" /><BR>
 
  <asp:Button id="LoginButton" Text="Login"
 OnClick="Login_OnClick" runat="server"
 />
  <asp:CheckBox id="NotPublicCheckBox" runat="server"
 /> Check here if this is <u>not</u>
 a public computer.

</form>

</body>
</html>
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>

<script runat="server">

public void Login_OnClick(object sender, EventArgs
 args)
{
   if (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
   else
     Msg.Text = "Login failed. Please check your user name and password and
 try again.";
}


</script>

<html>
<head>
  <title>Login</title>
</head>
<body>

<form runat="server">
  <h3>Login</h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server"
 /><P>

  Username: <asp:Textbox id="UsernameTextbox" runat="server"
 /><BR>
  Password: <asp:Textbox id="PasswordTextbox" runat="server"
 TextMode="Password" /><BR>
 
  <asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick"
 runat="server" />
  <asp:CheckBox id="NotPublicCheckBox" runat="server" />
 Check here if this is <u>not</u>
 a public computer.

</form>

</body>
</html>
.NET Framework のセキュリティ.NET Framework のセキュリティ
継承階層継承階層
System.Object
  System.Web.Security.FormsAuthentication
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

FormsAuthentication コンストラクタ


FormsAuthentication プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ CookieDomain フォーム認証 Cookie のドメインの値を取得します。
パブリック プロパティ CookieMode アプリケーションが cookieless フォーム認証用として構成されているかどうかを示す値を取得します。
パブリック プロパティ CookiesSupported アプリケーションが cookieless フォーム認証をサポートするように構成されているかどうかを示す値を取得します。
パブリック プロパティ DefaultUrl リダイレクト URL が指定されていない場合に、FormsAuthentication クラスがリダイレクトする URL を取得します。
パブリック プロパティ EnableCrossAppRedirects 認証されたユーザーを他の Web アプリケーション内の URL にリダイレクトできるかどうかを示す値を取得します。
パブリック プロパティ FormsCookieName フォーム認証チケットを格納するのに使用される Cookie の名前を取得します。
パブリック プロパティ FormsCookiePath フォーム認証 Cookie のパスを取得します。
パブリック プロパティ LoginUrl FormsAuthentication クラスがリダイレクトするログイン ページ用 URL を取得します。
パブリック プロパティ RequireSSL フォーム認証の Cookie をサーバーに返すために SSL を必要とするかどうかを示す値を取得します。
パブリック プロパティ SlidingExpiration スライド式有効期限が有効かどうかを示す値を取得します。
参照参照

関連項目

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

その他の技術情報

フォーム認証プロバイダ

FormsAuthentication メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド Authenticate アプリケーションの構成ファイルに格納されている資格情報に対してユーザー名とパスワードを検証します。
パブリック メソッド Decrypt メソッドに渡される暗号化されたフォーム認証チケットに基づいて FormsAuthenticationTicket オブジェクトを作成します。
パブリック メソッド Encrypt HTTP Cookie で使用するのに適した暗号化認証チケットを格納している文字列を生成します。
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。)
パブリック メソッド GetAuthCookie オーバーロードされます。 指定したユーザー名の認証 Cookie を作成します。
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。)
パブリック メソッド GetRedirectUrl ログイン ページへのリダイレクトを引き起こした元の要求に対する、リダイレクト URL を返します。
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド HashPasswordForStoringInConfigFile 指定したパスワードとハッシュ アルゴリズムに基づいて、構成ファイルに格納できるハッシュ パスワードを生成します。
パブリック メソッド Initialize アプリケーションの構成に基づいて FormsAuthentication オブジェクトを初期化します。
パブリック メソッド RedirectFromLoginPage オーバーロードされます。 認証済みユーザーを最初に要求された URL または既定の URL にリダイレクトします。
パブリック メソッド RedirectToLoginPage オーバーロードされます。 ブラウザをログイン URL にリダイレクトします。
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド RenewTicketIfOld 条件付きで FormsAuthenticationTicket の発行日時と有効期限を更新します。
パブリック メソッド SetAuthCookie オーバーロードされます。 指定したユーザー名に対して認証チケットを作成し、応答の Cookie コレクションか URL にチケットを追加します。
パブリック メソッド SignOut ブラウザからフォーム認証チケットを削除します。
パブリック メソッド ToString  現在の Object を表す String を返します。 ( Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

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

その他の技術情報

フォーム認証プロバイダ

FormsAuthentication メンバ

Web アプリケーションのフォーム認証サービスを管理します。このクラスは継承できません。

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


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド FormsAuthentication FormsAuthentication クラスの新しいインスタンスを初期化します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ CookieDomain フォーム認証 Cookie のドメインの値を取得します。
パブリック プロパティ CookieMode アプリケーションが cookieless フォーム認証用として構成されているかどうかを示す値を取得します。
パブリック プロパティ CookiesSupported アプリケーションが cookieless フォーム認証をサポートするように構成されているかどうかを示す値を取得します。
パブリック プロパティ DefaultUrl リダイレクト URL が指定されていない場合に、FormsAuthentication クラスがリダイレクトする URL を取得します。
パブリック プロパティ EnableCrossAppRedirects 認証されたユーザーを他の Web アプリケーション内の URL にリダイレクトできるかどうかを示す値を取得します。
パブリック プロパティ FormsCookieName フォーム認証チケットを格納するのに使用される Cookie の名前を取得します。
パブリック プロパティ FormsCookiePath フォーム認証 Cookie のパスを取得します。
パブリック プロパティ LoginUrl FormsAuthentication クラスがリダイレクトするログイン ページ用 URL を取得します。
パブリック プロパティ RequireSSL フォーム認証の Cookie をサーバーに返すために SSL を必要とするかどうかを示す値を取得します。
パブリック プロパティ SlidingExpiration スライド式有効期限が有効かどうかを示す値を取得します。
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド Authenticate アプリケーションの構成ファイルに格納されている資格情報に対してユーザー名とパスワードを検証します。
パブリック メソッド Decrypt メソッドに渡される暗号化されたフォーム認証チケットに基づいて FormsAuthenticationTicket オブジェクトを作成します。
パブリック メソッド Encrypt HTTP Cookie で使用するのに適した暗号化認証チケットを格納している文字列を生成します。
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。)
パブリック メソッド GetAuthCookie オーバーロードされます。 指定したユーザー名の認証 Cookie を作成します。
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。)
パブリック メソッド GetRedirectUrl ログイン ページへのリダイレクトを引き起こした元の要求に対する、リダイレクト URL を返します。
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド HashPasswordForStoringInConfigFile 指定したパスワードとハッシュ アルゴリズムに基づいて、構成ファイルに格納できるハッシュ パスワードを生成します。
パブリック メソッド Initialize アプリケーションの構成に基づいて FormsAuthentication オブジェクトを初期化します。
パブリック メソッド RedirectFromLoginPage オーバーロードされます。 認証済みユーザーを最初に要求された URL または既定の URL にリダイレクトします。
パブリック メソッド RedirectToLoginPage オーバーロードされます。 ブラウザをログイン URL にリダイレクトします。
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド RenewTicketIfOld 条件付きで FormsAuthenticationTicket の発行日時と有効期限を更新します。
パブリック メソッド SetAuthCookie オーバーロードされます。 指定したユーザー名に対して認証チケットを作成し、応答の Cookie コレクションか URL にチケットを追加します。
パブリック メソッド SignOut ブラウザからフォーム認証チケットを削除します。
パブリック メソッド ToString  現在の Object を表す String を返します。 (Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

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

その他の技術情報

フォーム認証プロバイダ



英和和英テキスト翻訳

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

辞書ショートカット

すべての辞書の索引

「FormsAuthentication」の関連用語

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

   

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



FormsAuthenticationのページの著作権

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

©2026 GRAS Group, Inc.RSS