OIDCとアクセスポリシー
属性ベースのアクセスコントロールを使用している場合、OIDCプリンシパルにアクセスポリシーを付与し、エクイニクスのインフラストラクチャへのアクセスを許可することができます。次に、OIDCプリンシパルがトークン交換を実行する際に、scopeパラメータにアクセスポリシーのERNを付与します。プリンシパルにグラントがある場合、トークン交換はベアラートークンを発行します。
グラントとアクセスポリシーを管理するために必要な権限は、次のいずれかです:
- 役割ベースのアクセス制御 -
IAM Admin役割。 - 属性ベースのアクセス制御 -
use/listAccessPolicies、use/addGrant、use/listGrants、use/removeGrantを含むアクセス・ポリシー:use/listAccessPolicies,use/addGrant,use/listGrants,use/removeGrant.
属性ベースのアクセス・コントロールは現在、LA(Limited Availability)ステータスで提供されています。アクセスは、管理された顧客とユースケースに制限されています。機能は不完全で、変更される可能性があり、不具合が含まれる可能性があります。運用上のセーフガードと容量制限が適用されます。このAPIを使用することで、お客様は以下を認識することになります:
- 早期アクセスおよびフィードバックのみを目的としています。
- 地域、セグメント、または容量の制約により、可用性が制限される場合があります。
- 現段階では、機能、パフォーマンス、安定性は保証されていません。
- ドキュメントとサポートリソースは進化している可能性があります。
- このフェーズで提供されるフィードバックは、一般提供(GA)前の改善に反映されます。
アクセスポリシーを見る
プロジェクトの既存のアクセス ポリシーを表示するには、/v1/projects/{projectId}/accessPolicies エンドポイントに GET リクエストを送信します。アクセス ポリシーにグラントを追加する場合は、リクエストにアクセス ポリシー ID を指定する必要があります。
サンプルcURLリクエスト:
curl -X GET 'https://access.eqix.equinix.com/v1/projects/{projectId}/accessPolicies' \
-H 'Authorization: Bearer <token>'
補助金の追加
アクセス ポリシーにグラントを追加するには、/v1/projects/{projectId}/accessPolicies/{accessPolicyId}/grants エンドポイントに POST リクエストを送信します。指定します:
-
リクエストのパスにプロジェクトとアクセスポリシーIDを追加します。
-
granteeオブジェクトでアクセス権を付与する OIDC プリンシパル:principal:<projectId>:<idp>:<subject>for a user or service.group:<projectId>:<idp>:<groupName>for a group.project:<projectId>for another project to export this access policy to another project.
サンプルcURLリクエスト:
curl -X POST 'https://access.eqix.equinix.com/v1/projects/{projectId}/accessPolicies/{accessPolicyId}/grants' \
-H 'content-type: application/json' \
-H 'authorization: Bearer <token>' \
-d '{
"grantee": "principal:<projectId>:<idp>:<subject>"
}'
補助金一覧
どの OIDC プリンシパルが特定のアクセスポリシーを付与されているかを確認するには、付与リストを取得します。/v1/projects/{projectId}/accessPolicies/{accessPolicyId}/grants エンドポイントに GET リクエストを送信します。
サンプルcURLリクエスト:
curl -X GET 'https://access.eqix.equinix.com/v1/projects/{projectId}/accessPolicies/{accessPolicyId}/grants' \
-H 'Authorization: Bearer <token>'
補助金の削除
グラントを削除すると、OIDC プリンシパルはアクセスポリシーによって付与されたパーミッションへのアクセスを失います。グラントを削除するには、/v1/projects/{projectId}/accessPolicies/{accessPolicyId}/grants/{grantId} エンドポイントに DELETE リクエストを送信します。
サンプルcURLリクエスト:
curl -X DELETE 'https://access.eqix.equinix.com/v1/projects/{projectId}/accessPolicies/{accessPolicyId}/grants/{grantId}' \
-H 'Authorization: Bearer <token>'