コンテンツにスキップ
HaneDOCSEN

API リファレンス

認証

トークン交換と、組織に入る前の自分の情報。

入口。トークン交換と、組織に入る前の自分の情報。ログインそのもの(組織の IdP とメールのワンタイムコード)は /api/auth/* で行い、この契約には含めない

説明は公開 API の契約(OpenAPI)から生成しています。

POST /v1/auth/token
POST /v1/auth/handoff
POST /v1/auth/handoff/redeem
GET /v1/auth/me

POST/v1/auth/token

ログインのセッションか IdP の id_token を、組織・プロジェクト・環境に束縛したアクセストークンに交換する

application/json

名前 型 必須 説明
grant_type object はい
subject_token string ログインのセッショントークンか、IdP の id_token。省くと、ログインのセッションの cookie、提供側の経路の Cloudflare Access のトークンの順に使う
subject_token_type urn:ietf:params:oauth:token-type:id_token | urn:hane:params:token-type:session
actor_token string 顧客アプリのサービスアカウントの API キー。あれば利用者とアプリのスコープの共通部分になる
actor_token_type object
organization string はい 組織の name か tenant_id
project string
environment Environment
engagement string 運営者の委任の ID。organization は顧客の組織にする。プロジェクトと環境は委任で決まるので project・environment・actor_token とは併用できない
  • 200 — TokenResponse: アクセストークン
  • default — Problem: RFC 9457 Problem Details

POST/v1/auth/handoff

ログインの画面が、利用者がログインした後に、セッションの cookie を付けて呼ぶ。戻す先は、環境が許した origin の URL だけ。コードは 1 分で切れる

application/json

名前 型 必須 説明
return_to string はい ログインの後に利用者を戻す、顧客アプリの URL
state string アプリが渡した値。そのまま戻す URL に付ける
  • 200 — object: 戻す先
  • default — Problem: RFC 9457 Problem Details

POST/v1/auth/handoff/redeem

引き換えたセッショントークンは、POST /v1/auth/token の subject_token に、アプリの API キー(actor_token)と一緒に渡す。コードは一度しか引き換えられない

application/json

名前 型 必須 説明
code string はい
  • 200 — object: セッショントークン
  • default — Problem: RFC 9457 Problem Details

GET/v1/auth/me

自分と、所属する組織(確かめたメールアドレスで招待されている組織も含む)。Bearer がなければ、ログインのセッションの cookie で決める

  • 200 — object: 自分
  • default — Problem: RFC 9457 Problem Details