令和5年度 秋期 情報処理安全確保支援士 午前Ⅱ 問5 OAuth 2.0

Tech

style_prompt本記事はGeminiの出力をプロンプト工学で整理した業務ドラフト(未検証)です。

令和5年度 秋期 情報処理安全確保支援士 午前Ⅱ 問5 OAuth 2.0

OAuth 2.0においてリソース所有者の権限をアプリに委譲する際に使用される、アクセストークンの性質と発行プロセスを解説します。

OAuth 2.0において,認可サーバがアクセストークンを発行し,クライアントがそのアクセストークンを利用してリソースサーバからリソースを取得する手順はどれか。

ア 認可サーバがリソースサーバにアクセストークンを送信し,リソースサーバがクライアントにそのアクセストークンを送信する。 イ クライアントが認可サーバにアクセストークンの発行を要求し,認可サーバがクライアントにアクセストークンを送信する。 ウ クライアントがリソースサーバに認可コードを送信し,リソースサーバが認可サーバからアクセストークンを取得する。 エ リソースサーバが認可サーバにアクセストークンの発行を要求し,認可サーバがクライアントにアクセストークンを送信する。

【解説】 OAuth 2.0は、サードパーティ製のアプリケーション(クライアント)が、ユーザ(リソース所有者)に代わってHTTPサービス上のリソースへアクセスできるようにする認可フレームワークです。

基本的な「認可コードグラント」のフローにおいて、アクセストークンの発行と利用は以下の流れで行われます。

  1. クライアントがユーザから認可を得て「認可コード」を取得する。

  2. クライアントが認可サーバに対して認可コードを提示し、アクセストークンの発行を要求する。

  3. 認可サーバがクライアントに対してアクセストークンを発行(送信)する。

  4. クライアントがそのアクセストークンをリソースサーバに提示してリソースを取得する。

sequenceDiagram
    participant C as Client
    participant "A as Authorization Server"
    participant "R as Resource Server"
    C ->> A: Request Access Token (with Auth Code)
    A -->> C: Issue Access Token
    C ->> R: Access Resource (with Access Token)
    R -->> C: Protected Resource

【選択肢の吟味】

選択肢 判定 解説
× アクセストークンは認可サーバからクライアントへ直接渡されます。リソースサーバを経由することはありません。
正解。クライアントが認可サーバに要求し、認可サーバがクライアントへトークンを返却するのが正しい手順です。
× 認可コードは、クライアントが認可サーバからアクセストークンを取得するために使用する一時的なコードです。
× トークンの発行を要求する主体はクライアントです。リソースサーバは提示されたトークンを検証する役割を担います。

【ポイント】

  • 認可サーバ:アクセストークンを発行し、クライアントの認証を行う。

  • クライアント:アクセストークンを取得し、リソースサーバへ提示するアプリ。

  • リソースサーバ:アクセストークンの妥当性を検証し、保護されたリソースを提供する。

ライセンス:本記事のテキスト/コードは特記なき限り CC BY 4.0 です。引用の際は出典URL(本ページ)を明記してください。
利用ポリシー もご参照ください。

コメント

タイトルとURLをコピーしました