0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

OpenID Connect Client-Initiated Backchannel Authentication(CIBA) Flowメモ

Posted at

CIBAとは

  • OpenID Foundation によって策定された、認証・認可 に関する仕様の一つ。
  • ユーザーの認証・同意取得処理を、ユーザーの認証デバイス(Authentication Device)で実施するのが特徴。

用語

  • Consumption Device (CD、消費デバイス)

    • ユーザーがサービス利用(消費)に用いるデバイス。
    • このデバイスがOIDC IdPに認証リクエストを行うことでCIBAフローが開始される。
  • Authentication Device (AD、認証デバイス)

    • ユーザーが認証・同意を行うデバイス。
    • スマホなど。

    ※2つのデバイス自体とそれらを操作する人物は同一でなくてもよい。

フロー

CIBA.png

  1. クライアントアプリ(Consumption Device、消費デバイス)は認可サーバー/バックチャネル認証エンドポイント(Backchannel Authentication Endpoint)に対してバックチャネル認証リクエスト(Backchannel Authentication Request)を行う。

  2. 認可サーバー/バックチャネル認証エンドポイントはクライアントに対してレスポンスとして認証を識別するための識別子を返却する。

  3. 認可サーバーはユーザーの認証デバイス(スマホなど)などに認証・同意取得処理を要求する。

  4. クライアントアプリは次の3つのモードをトークンを取得する。

    • POLLモード

      • (3で認証デバイスからユーザー認証・同意結果を得るまで、)クライアントアプリは認可サーバー/トークンエンドポイントに対して、トークンリクエストを繰り返す。
    • PINGモード

      • (3で認証デバイスでのユーザー認証・同意取得処理完了後、)認可サーバーはクライアントアプリの通知エンドポイントに通知を行う。

      • クライアントアプリは認可サーバー/トークンエンドポイントに対して、トークンリクエストを行う。

    • PUSHモード

      • (3で認証デバイスでのユーザー認証・同意取得処理が終わった後、)認可サーバーはトークン情報をクライアントの通知エンドポイントに直接渡す。

ユースケース

  • コールセンターでの発信者の認証
  • 銀行(対面応対)での顧客認証
  • スマホを用いたPOS 端末支払い

参考情報

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?