「Form認証」「Basic認証」の違い

「Form認証」「Basic認証」の違いについてまとめました。

「Form認証」「Basic認証」の違い

「Form認証」「Basic認証」の違いは次の通りです。

Form認証の概要
最初に、クライアント側が会員登録ページで「ユーザーID」「パスワード」を登録し、サーバー側に保存されます。
クライアント側は、ログイン画面で登録した「ユーザーID」「パスワード」を入力し送信します。
サーバー側で送信された情報と登録されている情報を比較し、一致すれば認証を確立します。
認証情報を保存するために、セッションIDを発行し、レスポンスクッキーにセッションIDを付与する。
サーバ側で、「ユーザーID」と「セッションID」をひもづけて保存します。こうすることで、レスポンスクッキーの有効期間中、クライアント側は「ユーザーID」「パスワード」を入力せずにログイン可能となります。これは、付与されたクッキーをリクエストに付与してサーバーに送信し、サーバ側は、リクエストクッキー内の「セッションID」とサーバー側で保存している「セッションID」と比較してユーザのログイン状態を判定するためです。
Basic認証の概要
サーバー側で「ユーザーID」「パスワード」を設定し、クライアントにメールなどで配布します。
クライアント側は、ブラウザの入力フォームで「ユーザーID」「パスワード」を入力し、HTTPリクエストを送信します。
クライアント側から送信されたHTTPリクエスト(ヘッダに「ユーザーID」「パスワード」が埋め込まれている)をサーバ側が取得して認証します。
認証確立後、ブラウザは前回入力した「ユーザーID」「パスワード」を記録し、自動でHTTPリクエスト(ヘッダに「ユーザーID」「パスワード」が埋め込まれている)を送信します。
関連ページ
1 【情報処理入門】基礎用語・原理・資格まとめ
関連記事