情報セキュリティスペシャリスト平成27年秋期 午前U 問17

午前U 問17

OAuth2.0において,WebサービスAの利用者Cが,WebサービスBにリソースDを所有している。利用者Cの承認の下,WebサービスAが,リソースDへの限定的なアクセス権限を取得するときのプロトコルOAuth2.0の動作はどれか。
  • WebサービスAが,アクセストークンを発行する。
  • WebサービスAが,利用者Cのディジタル証明書をWebサービスBに送信する。
  • WebサービスBが,アクセストークンを発行する。
  • WebサービスBが,利用者Cのディジタル証明書をWebサービスAに送信する。
  • [この問題の出題歴]
  • 安全確保支援士 H29春期 問14

分類

テクノロジ系 » セキュリティ » セキュリティ実装技術

正解

解説

OAuth2.0は、異なるドメインやプラットフォーム間で、 サードパーティアプリケーションによるHTTPサービスへの限定的なアクセスを可能にするオープンな認可フレームワークです。
17_1.gif/image-size:124×123
簡単に言うとユーザー本人の認可の下、サードパーティアプリケーションに対してWebサービス側からアクセストークン(委任状のようなもの)が発行され、サードパーティアプリケーションがユーザに代わりそれを使用してWebサービス(API)にアクセスできるようにする仕組みです。

OAuth2.0では以下の3種類のロール(役)が登場します。
リソースオーナ(resource owner)
リソースサーバ内の保護された情報へのアクセスを許可するエンドユーザであり、クライアントの利用者のこと。この設問では利用者Cが該当する。
リソースサーバ(resource server)
保護された情報を保持し、Webサービスを提供するアプリケーションのこと。リソースオーナを認証しクライアントにアクセストークンを発行する認可サーバ(authorization server)の役割を兼ねることが多い。この設問ではWebサービスBが該当する。
クライアント(client)
リソースオーナの認可を得てリソースサーバにアクセスするサードパーティアプリケーションのこと。この設問ではWebサービスAが該当する。
この設問におけるOAuth2.0のザックリしたフローは次のようになります。
  1. 利用者Cが、WebサービスAにアクセスする。
  2. WebサービスAは、利用者CをWebサービスBにリダイレクトし、認証・認可手続きを促す。
  3. 利用者CはWebサービスBで認証・認可手続きを行う。
  4. WebサービスBは、利用者Cからの認証・認可が得られると、WebサービスAに対してアクセストークンを発行する。
  5. WebサービスAは、アクセストークンなどを含めたHTTPリクエストをWebサービスBに送信する。
  6. WebサービスBは、HTTPリクエストが正当なものであるかを検証し、妥当であればリソースDを含むHTTPレスポンスをWebサービスAに返す。
17_2.gif/image-size:374×289
したがって選択肢のうちOAuth2.0の動作として適切な記述は「ウ」になります。

Webサイトにおいて「Twitterでログインする」「Facebookでログインする」などのSNSアカウントでログインする方法を見かけますが、これらは一般的にはOAuth(又はOpenID)を使用して実装されています。
© 2014-2019 情報処理安全確保支援士ドットコム All Rights Reserved.

Pagetop