Service Account Key を、指定した Identity に関連付けられた短期アクセストークンに交換します。
POST /api/v1/forward/identities/{identity_id}/service_account_tokens
指定したエンドユーザー(Identity)を主体とする Service Account Token を発行します。この Token を持つ呼び出し元は、その Identity のコンテキストで Forward API(Session の作成や Identity 設定の照会など)にアクセスできます。企業が提供する製品内で、個々のエンドユーザーセッションに Token を配布する場合に適しています。
Templates や Identities などのエンタープライズリソースを管理する場合は、管理者を主体とする Service Account Token の作成を使用してください。
リクエストヘッダー
| Header | 必須 | 説明 |
|---|---|---|
| Authorization | はい | Bearer <Service Account Key> |
| Content-Type | はい | application/json |
パスパラメーター
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| identity_id | string | はい | Forward Identity ID。 |
リクエストボディ
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| ttl_seconds | integer | いいえ | Token の有効期間(秒)。1~43200(最大 12 時間)。省略時はプラットフォームのデフォルト値が使用されます。 |
| metadata | object | いいえ | 監査用に Token の用途を示すビジネスメタデータ。 |
リクエスト例
レスポンス例
HTTP 201 Created
レスポンスフィールド
| フィールド | 型 | 説明 |
|---|---|---|
| type | string | 常に service_account_token。 |
| access_token | string | 短期アクセストークン。このレスポンスでのみ返されるため、安全に保管してください。 |
| token_type | string | 常に Bearer。 |
| expires_in | integer | 有効期間(秒)。 |
| expires_at | string | RFC 3339 形式の有効期限。 |
| auth_token_id | string | Token を失効させる際に使用する一意の ID。 |
| service_account_id | string | Token を発行した Service Account の ID。 |
| credential_id | string | Token を発行した Service Account Key の ID。 |
| subject_type | string | Token の主体タイプ。この API では identity。 |
| identity_id | string | Token に関連付けられた Identity ID。 |
エラー
| HTTP | Type | Code | 条件 |
|---|---|---|---|
| 400 | invalid_request_error | - | identity_id が空、リクエストボディが無効、または ttl_seconds が 1~43200 の範囲外。 |
| 401 | authentication_error | - | Service Account Key が無効または期限切れ、あるいは別の種類の認証情報を使用。 |
| 403 | permission_error | - | 対象 Identity が無効化されている。 |
| 404 | not_found_error | - | 対象 Identity が存在しない。 |
| 503 | api_error | - | Token 発行サービスが一時的に利用不可。後でもう一度お試しください。 |
注意事項
- Token は Identity に関連付けられます。呼び出し元はその Identity としてのみ API にアクセスでき、他の Identity のデータは操作できません。
- Identity が無効化または削除されると、対応する Token を使用した業務リクエストは拒否されます。
- エンドユーザーセッションごとに 1 つの Token を発行し、セッション時間に合う
ttl_secondsを設定することを推奨します。