タグ付けできる API Gateway リソース
タグは、Amazon API Gateway V2 API の次の HTTP API または WebSocket APIリソースで設定できます。
-
Api -
DomainName -
Stage -
VpcLink
また、タグは Amazon API Gateway V1 API の次の REST API リソースに設定することができます。
-
ApiKey -
ClientCertificate -
DomainName -
DomainNameAccessAssociation -
RestApi -
Stage -
UsagePlan -
VpcLink
タグを他のリソースに直接設定することはできません。ただし、Amazon API Gateway V1 API では、子リソースは親リソースに設定されているタグを継承します。例:
-
タグが
RestApiリソースに設定されている場合、そのタグは、属性ベースのアクセスコントロールのRestApiの次の子リソースに継承されます:-
Authorizer -
Deployment -
Documentation -
GatewayResponse -
Integration -
Method -
Model -
Resource -
ResourcePolicy -
Setting -
Stage
-
-
タグが
DomainNameに設定されている場合、そのタグはその下のBasePathMapping、ApiMapping、およびRoutingRuleのすべてのリソースに継承されます。 -
タグが
UsagePlanに設定されている場合、そのタグはその下のUsagePlanKeyリソースに継承されます。
注記
タグの継承は、属性ベースのアクセスコントロールにのみ適用されます。例えば、継承されたタグを使用して AWS Cost Explorer でコストを監視することはできません。コスト配分でタグを使用するには、Stage リソースなどの子リソースにタグを作成することをお勧めします。
API Gateway は、リソースの GetTags の呼び出し時に継承されたタグを返しません。
Amazon API Gateway V1 API でのタグの継承
以前は、タグをステージにしか設定できませんでした。他のリソースにも設定できるようになったため、Stage は 2 つの方法でタグを受け取ることができます。
-
Stageでタグが直接設定される。 -
ステージがその親
RestApiからタグを継承する。
ステージが両方の方法でタグを受け取った場合は、ステージで直接設定されているタグが優先されます。たとえば、ステージがその親 REST API から以下のタグを継承するとします。
{ 'foo': 'bar', 'x':'y' }
ステージで以下のタグも直接設定されているとします。
{ 'foo': 'bar2', 'hello': 'world' }
最終的に、ステージは以下のタグと値を受け取ることになります。
{ 'foo': 'bar2', 'hello': 'world' 'x':'y' }
タグの制限事項と使用規則
API Gateway リソースでのタグの使用には、以下の制限事項と使用規則が適用されます。
-
各リソースには、最大 50 個のタグを設定できます。
-
タグキーは、リソースごとにそれぞれ一意である必要があります。また、各タグキーに設定できる値は 1 つのみです。
-
タグキーの最大長は UTF-8 で 128 Unicode 文字です。
-
タグ値の最大長は UTF-8 で 256 Unicode 文字です。
-
キーと値に使用できる文字は、UTF-8 対応の文字、数字、スペースと、文字 (. : + = @ _ / -) (ハイフン) です。Amazon EC2 リソースでは、任意の文字を使用できます。
-
タグのキーと値は大文字と小文字が区別されます。ベストプラクティスとして、タグを大文字にするための戦略を決定し、その戦略をすべてのリソースタイプにわたって一貫して実装します。たとえば、
Costcenter、costcenter、CostCenterのいずれを使用するかを決定し、すべてのタグに同じ規則を使用します。大文字と小文字の扱いについて、同様のタグに整合性のない規則を使用することは避けてください。 -
プレフィックス
aws:はタグで使用することはできません。AWS 用に予約されています。このプレフィックスが含まれるタグのキーや値を編集したり削除することはできません。このプレフィックスを持つタグは、リソースあたりのタグ数の制限には計算されません。