2.10. ベアラートークンによる認証および承認の設定

2.10.1. ベアラートークン認証

BEARER_TOKEN 認証メカニズムを使用して、アプリケーションに送信された HTTP リクエストを承認できます。Web ブラウザーなどのクライアントが HTTP リクエストをアプリケーションに送信すると、BEARER_TOKEN メカニズムは要求の Authorization HTTP ヘッダーにベアラートークンがあることを確認します。

Elytron は、OpenID Connect ID トークンなどの JWT 形式のベアラートークン、または OAuth2 準拠の承認サーバーによって発行される不透明なトークンを使用して、認証をサポートします。追加リソース のセクションを参照してください。

以下の例は、Authorization HTTP ヘッダーに the mF _9.B5f-4.1JqM ベアラートークンが含まれることを示しています。

GET /resource HTTP/1.1
Host: server.example.com
Authorization: Bearer mF_9.B5f-4.1JqM

The BEARER_TOKEN メカニズムにより、ベアラートークンの文字列を抽出し、検証のために token-realm 実装に渡すことができます。実装がベアラートークンを正しく検証する場合、Elytron はトークンで表される情報に基づいてセキュリティーコンテキストを作成します。アプリケーションはこのセキュリティーコンテキストを使用して要求元についての情報を取得できます。その後、要求側が HTTP リソースへのアクセスを提供し、リクエストを満たすかどうかを決定できます。

要求担当者がベアラートークンを提供しない場合、The BEARER_TOKEN メカニズムは 401 HTTP ステータスコードを返します。以下は例になります。

HTTP/1.1 401 Unauthorized
WWW-Authenticate: Bearer realm="example"

リクエスターがリソースにアクセスする権限がない場合は、The BEARER_TOKEN メカニズムは、403 の HTTP ステータスコードを返します。

HTTP/1.1 403 Forbidden

関連情報