本文へスキップ

OIDC API認証

エクイニクスのAPIは、OAuth 2.0プロトコルを使用してAPIエンドポイントへのOIDCユーザーのリクエストを認証します。 エクイニクスのAPIを利用するには、ベアラアクセストークンが必要です。

前提条件

  1. OIDCプロバイダ

  2. 登録したOIDCプロバイダからのOIDC IDトークン。

  3. API アクセストークンの範囲を指定するための、製品またはサービス固有の権限。どちらかが必要です:

    • ern:<access-policy-ern>ここで<access-policy-ern>はプリンシパルに付与された単一のアクセスポリシーです。
    • roleassignments:<org-id> ここで <org-id> は OIDC プリンシパルが 役割 を割り当てた組織 ID です。
    • projectpolicies:<project-id> ここで <project-id> は OIDC プリンシパルが アクセス ポリシー またはアクセス ポリシーを付与されているプロジェクト ID です。
    • orgpolicies:<org-id> ここで <org-id> は、プリンシパルにアクセス・ポリシーまたはアクセス・ポリシーが付与されている組織 ID です。
    • orgpolicies:<org-id> roleassignments:<org-id> ここで <org-id> は、プリンシパルにロールとアクセスポリシーの両方が付与されている組織 ID です。

    詳細については、アクセス制御スコープ を参照してください。

アクセストークンのリクエスト

ベアラ アクセストークンを要求するには、/v1/token エンドポイントに POST リクエストを送信します。

リクエスト本文に

  • grant_type - アクセストークンを受け取るには urn:ietf:params:oauth:grant-type:token-exchange を使用します。
  • scope(必須) - スコープをプロバイダ。トークンによって付与されたパーミッションは、プリンシパルに適切なロールまたはアクセスポリシーが付与されているかどうかをチェックします。詳細については、アクセス制御スコープ を参照してください。
  • subject_token - OIDC ID トークン。
  • subject_token_type - OIDC ID トークンとして subject_token を識別する urn:ietf:params:oauth:token-type:id_token を使用します。

サンプルcURLリクエスト:

curl -X POST 'https://sts.eqix.equinix.com/v1/token' \
--data-urlencode 'grant_type=urn:ietf:params:oauth:grant-type:token-exchange' \
--data-urlencode 'subject_token_type=urn:ietf:params:oauth:token-type:id_token' \
--data-urlencode 'scope=<role_or_access_policy>' \
--data-urlencode 'subject_token=<oidc_id_token>'

アクセストークンの使用

Equinix APIとやり取りするには、HTTPリクエストのAuthorizationヘッダーにアクセストークンをAuthorization: Bearer <token>で送信します。

このページは役に立ちましたか?