HTTP認証とは、HTTPの通信の中で認証を行うことである。オリジンまたはプロキシサーバに対して認証を行う枠組みがの中で規定されており、これを用いることをHTTP認証という。

ステータスレスポンス HTTPでは、認証に関することして以下のものが定義されている。

オリジンとの認証処理 ステータスコード401 Unauthorized HTTPレスポンスヘッダーWWW-Authenticate HTTPリクエストヘッダーAuthorization プロキシサーバーとの認証処理 ステータスコード407 Proxy Authentication Required HTTPレスポンスヘッダーProxy-Authenticate HTTPリクエストヘッダーProxy-Authorization

なお、認証は通ったものの、アクセス制御として対象のリソースへのアクセスが許可されていない場合は、応答として403 Forbiddenを用いる。

認証スキーム 前述のリクエストヘッダー・レスポンスヘッダーの上で、様々な認証方式を使用できる。個々の認証方式を認証スキーム (authentication scheme) と呼ぶ。

例えば以下のような認証スキームが存在する。

Basic Basic認証。 Digest Digest認証。 Bearer Bearerトークンを用いるベアラー認証。 Negotiate ネゴシエート認証。による。で規定。

認証スキームはIANAがHypertext Transfer Protocol (HTTP) Authentication Scheme Registryとして管理している。一方で、NTLM[MS-NTHT]: NTLM Over HTTP ProtocolやAWS4-HMAC-SHA256署名バージョン 4 を使用してAWS リクエストに署名する - AWS 全般のリファレンスのように登録されずに使われているものもある。

関連項目 Basic認証 Digest認証

脚注

外部リンク : HTTP Semantics Hypertext Transfer Protocol (HTTP) Authentication Scheme Registry HTTP 認証 - HTTP | MDN