ダッシュボード
認証

セッションと JWT

リフレッシュ ローテーション、RS256 アクセス トークン、およびJWKS。

プロジェクト認証は、有効期間の短い RS256 アクセス トークンと不透明な回転リフレッシュ トークンを発行します。セッション ポリシーはプロジェクトごとに構成されます。

#トークン モデル

トークン形式使用する
アクセス トークンRS256 JWTユーザー保護されたアプリケーション API の呼び出し
リフレッシュ トークンOpaque halo_rt_…セッションをローテーションする
プロバイダのログイン コードワンタイム不透明コードソーシャルサインインを完了する
OAuth アプリ トークンRS256 JWT + 不透明更新サービス スコープのアクセス

#リフレッシュ ローテーション

curl -X POST \
  "https://api.agihalo.com/api/v1/auth/token?grant_type=refresh_token" \
  -H "apikey: $HALO_PROJECT_PUBLISHABLE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "refresh_token": "halo_rt_..."
  }'

#アクセス トークンを確認する

GET/api/v1/auth/.well-known/jwks.json

公開可能キーヘッダーを使用してプロジェクトのパブリック JWK を取得し、一時的にキャッシュします。次のすべてを検証します:

  • アルゴリズムは RS256 および JWT kid は JWK と一致します。
  • 発行者は halo-project:{projectId}.
  • 対象者は halo-project-auth プロジェクト ユーザー トークン用。
  • tokenUseproject_auth_accessです。
  • 有効期限、プロジェクト ID、件名、セッション ID、電子メールが存在します。
GET/api/v1/auth/user

現在のユーザーに対する有効なベアラー アクセス トークンを解決します。

#取り消しとして再利用する

POST/api/v1/auth/logout

プロジェクト オーナーは、アクティブなセッションを一覧表示し、ダッシュボードから個々のセッションを取り消すこともできます。ユーザーの禁止または削除により、今後のセッション検証は利用できなくなります。