メインコンテンツまでスキップ
プレビュー版
PocketSign Link v2 は現在プレビュー版です。正式提供までに仕様が変更される可能性があります。

UserInfo とトークン照会

PocketSign Link v2 では、アクセストークンから現在のユーザー属性を取得する userinfo と、トークンの有効性を照会する introspect、トークンを失効する revoke を提供します。

UserInfo

GET /api/oidc/v1/userinfo
POST /api/oidc/v1/userinfo

通常は Authorization: Bearer <access_token> で呼び出します。

返るクレーム

subjpki_verified は常に返ります。 その他の属性は、トークンが持つスコープに応じて返ります。

クレーム返却条件
sub常に返る(subscription_id
jpki_verified常に返る
name, gender, birthdateprofile または personal_info
email, email_verifiedemail
addressaddress または personal_info
phone_number, phone_number_verifiedphone

ID トークンとの違い

  • UserInfo は最新の属性値を返します
  • ID トークンは認可時点のスナップショットです

Token Introspection

POST /api/oidc/v1/introspect

クライアント認証を行ったうえで、token パラメータをフォームで送信します。

リクエスト

パラメータ必須説明
tokenはい照会対象のアクセストークンまたはリフレッシュトークン

client_secret_basic の例:

curl -X POST "https://id.mock.klon.you/api/oidc/v1/introspect" \
-u "7f3b41e2-a81c-4e35-b08d-2c7e60a4d073:client-secret" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "token=<access_or_refresh_token>"

レスポンス

無効なトークンの場合は、{"active": false} だけが返ります。

有効な場合は以下のフィールドが返ります。

フィールド説明
activeトークンが有効かどうか
token_type通常は Bearer。DPoP バインド時は DPoP
exp有効期限
iat発行時刻
client_idクライアント ID
jtiアクセストークン時のみ返るトークン ID
issIssuer
subサービスごとのサブスクリプション ID
audアクセストークン時に返る audience
grant_id紐づくグラント ID
cnfDPoP バインド時に返る公開鍵情報

Token Revocation

POST /api/oidc/v1/revoke

クライアント認証を行ったうえで、token パラメータをフォームで送信します。

リクエスト

パラメータ必須説明
tokenはい失効したいアクセストークンまたはリフレッシュトークン

client_secret_basic の例:

curl -X POST "https://id.mock.klon.you/api/oidc/v1/revoke" \
-u "7f3b41e2-a81c-4e35-b08d-2c7e60a4d073:client-secret" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "token=<access_or_refresh_token>"

挙動

  • 対象トークンが属するトークンファミリー全体を失効します
  • 関連するアクセストークンとリフレッシュトークンもまとめて失効します
  • ユーザーが同意した権限自体は失効しません
  • 対象トークンが見つからなくても、RFC 7009 に従って 200 OK を返します

典型的な利用順序