API Gateway ARN — REST/HTTP APIの識別
API Gateway ARNを解析し、REST API、HTTP API、ステージ、IAM認可で使用される実行ARNの異なる形式を理解します。
Networking
詳細な説明
API Gateway ARNの形式
API GatewayにはAPIリソース自体を参照する場合とIAM認可のための実行エンドポイントを参照する場合で、複数のARN形式があります。
REST API ARN
arn:aws:apigateway:us-east-1::/restapis/abc123def4
解析されたコンポーネント
| コンポーネント | 値 |
|---|---|
| Partition | aws |
| Service | apigateway |
| Region | us-east-1 |
| Account ID | (空) |
| Resource Type | (なし) |
| Resource ID | /restapis/abc123def4 |
空のアカウントID
API Gateway管理ARNはアカウントIDフィールドが空です。これは珍しいです。ほとんどのリージョナルサービスはアカウントIDを含みます。理由は歴史的なもので、API GatewayリソースはリージョンAPI内で一意のAPI IDによって識別されます。
IAM認可のための実行ARN
API GatewayでIAM認可を使用する場合、実行ARNは異なるパターンに従います:
arn:aws:execute-api:us-east-1:123456789012:abc123def4/prod/GET/users
サービスはexecute-api(apigatewayではない)であり、アカウントIDは存在します。リソースパスにはAPI ID、ステージ名、HTTPメソッド、リソースパスが含まれます。
実行ARNのワイルドカードパターン
IAMポリシーでは一般的に実行ARNでワイルドカードを使用します:
- すべてのリソースのすべてのメソッド:
arn:aws:execute-api:us-east-1:123456789012:abc123def4/prod/*/* - すべてのステージ:
arn:aws:execute-api:us-east-1:123456789012:abc123def4/*
HTTP APIとREST API
HTTP API(API Gateway v2)は類似の実行ARN形式を使用しますが、管理API ARNは/restapis/の代わりに/apis/を参照します。
ユースケース
特定のAPI Gatewayエンドポイントを呼び出す必要があるAPIクライアントのIAMポリシーの設定。実行ARNは、カスタムオーソライザーLambda関数で特定のAPIルートへのアクセスを許可または拒否するIAMポリシードキュメントを生成するために使用されます。