ClientがOpenID Providerへ直接、ユーザーの認証を依頼します。OpenID Providerは手元の認証端末へ通知し、ユーザーが内容を確認して承認します。認証が終わるとOpenID ProviderがClientへ完了だけを通知し、Clientがトークンを取得します。ブラウザのリダイレクトは使いません。
はじめに / 全体の流れ
このフローで、
何をするの?
このフローのゴール
操作中の端末へパスワードを入力せず、手元のスマートフォンなど別の端末で本人確認します。
店舗で手続きを始めると、銀行アプリへ確認通知が届き、スマートフォンで承認するイメージです。店舗端末へ銀行のパスワードを入力する必要はありません。
承認が完了するとClientはID TokenとAccess Tokenを受け取り、最初に始めた取引やログインを完了できます。
登場人物
図では、縦の列ごとに担当者やシステムを分けています。
User
サービスを利用する人です。ログインや同意、端末の操作を行います。
Consumption
認証を必要とする処理を開始する端末やサービスです。ユーザーの認証情報は受け取りません。
Auth Device
ユーザーが管理するスマートフォンなどです。要求内容を表示し、本人確認と承認を行います。
OpenID Provider
Clientからのバックチャネル要求を受け、認証端末とのやり取りとトークン発行を担当します。
図の読み方: 光る丸が今説明している通信です。自動再生を止めたいときは「Pause」を押し、気になる矢印を選んでください。
UUserEnd User
CConsumptionClient / Service Device
AAuth DeviceUser-controlled Device
OOpenID ProviderCIBA-enabled OP
01
User → Consumption
処理を開始
このステップで行うことユーザーがConsumption Deviceで認証を必要とする処理を始めます。
REQUEST / RESPONSE EXAMPLEConsumption Device → Client
REQUEST
POST /payments/confirm
Content-Type: application/json
Accept: application/json
{ "user_hint": "user@example.com", "amount": 1200 }レスポンス
HTTP/1.1 202 Accepted
Content-Type: application/json
Accept: application/json
{ "status": "authentication_pending" }※ トークン、challenge、Credential IDなどは説明用に短縮したサンプル値です。
Related flows