フォーム認証 【Form認証】 form-based authentication
概要
フォーム認証(Form認証)とは、Webサイトの認証方式の一つで、Webページにformタグなどでユーザー名やパスワードなどの入力フォームを作り、利用者が内容を入力してWebサーバに送信することで認証を行うもの。認証が必要なページに利用者がアクセスすると、ユーザー名やパスワードなどの認証情報の入力を求めるページが表示される。利用者はあらかじめ登録した認証情報を入力してサーバに送信し、サーバ側の認証プログラムで承認されると、保護された領域へのアクセスが許可される。
WebサーバとWebブラウザの間の通信規約(プロトコル)であるHTTPには、Basic認証やDigest認証などの認証機能(HTTP認証と総称される)が用意されているが、フォーム認証はこれを用いずに入力や検証に関する仕組みを開発者が自前で用意する。ブラウザからは入力データがそのまま送信されるため、SSL/TLSによって伝送経路全体を暗号化(HTTPS化)する必要がある。
認証状態を維持するか否かのチェックボックスを用意したり、ページ遷移を伴わずにサーバと通信したり、外部のネットサービスのアカウントでログイン(ソーシャルログイン)できるようにしたり、パスワード以外の方式を組み合わせて二段階認証を構成するなど、認証の仕組みを柔軟に設計することができる。サーバ側でもWebサーバの用意する認証機能の仕様や制約に縛られず、自由に認証機能を実装することができる。
(2023.5.30更新)