タグポリシーは、JSON 構文と継承演算子を使用して、リソース階層全体にタグ付けルールを適用します。
構文
タグポリシーは JSON 形式を使用します。構文はシナリオによって異なります。
特定の値を持つタグのリソースへの追加
このポリシータイプは tags で始まります。
|
要素 |
必須 |
説明 |
例 |
|
ポリシーキー |
はい |
ステートメントを一意に識別します。小文字である必要があります。ポリシーごとに複数のポリシーキーが許可されます。タグキーとの照合では、大文字と小文字は区別されません。 |
|
|
タグキー |
はい |
|
|
|
タグ値 |
はい |
|
|
|
リソースタイプスコープ |
いいえ |
|
|
|
リージョンスコープ |
いいえ |
|
|
|
リソースグループスコープ |
いいえ |
|
|
|
事前インターセプション |
いいえ |
|
|
|
自動修復 |
いいえ |
|
|
|
継承演算子 |
はい |
アタッチされたタグポリシーと継承されたタグポリシーを集約して、オブジェクトに対する有効なポリシーを計算します。 |
コード例:
{
"tags": {
"color": {
"tag_key": {
"@@operators_allowed_for_child_policies": [
"@@none"
],
"@@assign": "COLER"
},
"tag_value": {
"@@operators_allowed_for_child_policies": [
"@@append"
],
"@@assign": [
"red",
"green",
"grey"
]
},
"resource_type_scope": {
"@@operators_allowed_for_child_policies": [
"@@append"
],
"@@assign": [
"ecs:instance"
]
},
"region_scope": {
"@@operators_allowed_for_child_policies": [
"@@append"
],
"@@assign": [
"cn-hangzhou"
]
},
"rg_scope": {
"@@operators_allowed_for_child_policies": [
"@@append"
],
"@@assign": [
"rg-xxxx"
]
},
"enforced_for": {
"@@operators_allowed_for_child_policies": [
"@@remove"
],
"@@assign": [
"ecs:instance"
]
},
"tag_value_correction": {
"@@operators_allowed_for_child_policies": [
"@@none"
],
"@@assign": {
"red": {
"value_type": "Tag",
"value_scope": {
"acs:rm:rgId": "rg-xx1"
}
},
"green": {
"value_type": "Tag",
"value_scope": {
"k1": "v2"
}
},
"grey": {
"value_type": "Tag",
"value_scope": {
"k111": "v222"
}
}
}
}
}
}
}
リソースグループからのタグの自動継承
このポリシータイプは rg_inherit で始まります。
|
要素 |
必須 |
説明 |
例 |
|
ポリシーキー |
はい |
ステートメントを一意に識別します。小文字である必要があります。ポリシーごとに複数のポリシーキーが許可されます。タグキーとの照合では、大文字と小文字は区別されません。 |
|
|
タグキー |
はい |
|
|
|
リソースタイプスコープ |
いいえ |
|
|
|
リージョンスコープ |
いいえ |
|
|
|
リソースグループスコープ |
いいえ |
|
|
|
継承演算子 |
はい |
アタッチされたタグポリシーと継承されたタグポリシーを集約して、オブジェクトに対する有効なポリシーを計算します。 |
コード例:
{
"rg_inherit": {
"color": {
"tag_key": {
"@@operators_allowed_for_child_policies": [
"@@none"
],
"@@assign": "COLER"
},
"resource_type_scope": {
"@@operators_allowed_for_child_policies": [
"@@append"
],
"@@assign": [
"ecs:instance"
]
},
"region_scope": {
"@@operators_allowed_for_child_policies": [
"@@append"
],
"@@assign": [
"cn-hangzhou"
]
},
"rg_scope": {
"@@operators_allowed_for_child_policies": [
"@@append"
],
"@@assign": [
"rg-xxxx"
]
}
}
}
}
正規表現に対するタグ値の照合
このポリシータイプは matched_tags で始まります。
|
要素 |
必須 |
説明 |
例 |
|
ポリシーキー |
はい |
ステートメントを一意に識別します。小文字である必要があります。ポリシーごとに複数のポリシーキーが許可されます。タグキーとの照合では、大文字と小文字は区別されません。 |
|
|
タグキー |
はい |
|
|
|
タグ値 |
はい |
|
|
|
リソースタイプスコープ |
いいえ |
|
|
|
リージョンスコープ |
いいえ |
|
|
|
リソースグループスコープ |
いいえ |
|
|
|
自動修復 |
いいえ |
|
|
|
継承演算子 |
はい |
アタッチされたタグポリシーと継承されたタグポリシーを集約して、オブジェクトに対する有効なポリシーを計算します。 |
{
"matched_tags": {
"number": {
"tag_key": {
"@@operators_allowed_for_child_policies": [
"@@none"
],
"@@assign": "NUMBER"
},
"tag_value": {
"@@operators_allowed_for_child_policies": [
"@@assign"
],
"@@assign": [
"^[0-9]+$"
]
},
"resource_type_scope": {
"@@operators_allowed_for_child_policies": [
"@@append"
],
"@@assign": [
"ecs:instance"
]
},
"region_scope": {
"@@operators_allowed_for_child_policies": [
"@@append"
],
"@@assign": [
"cn-hangzhou"
]
},
"rg_scope": {
"@@operators_allowed_for_child_policies": [
"@@append"
],
"@@assign": [
"rg-xxxx"
]
},
"tag_value_correction": {
"@@operators_allowed_for_child_policies": [
"@@none"
],
"@@assign": {
"1": {
"value_type": "Tag",
"value_scope": {
"acs:rm:rgId": "rg-xx1"
}
},
"2": {
"value_type": "Tag",
"value_scope": {
"k1": "v2"
}
},
"3": {
"value_type": "Tag",
"value_scope": {
"k111": "v222"
}
}
}
}
}
}
}
継承演算子
継承演算子は、アタッチされたタグポリシーと継承されたタグポリシーを集約して、オブジェクトに対する有効なポリシーを計算します。継承演算子は、値設定演算子と子制御演算子の 2 つのカテゴリに分類されます。
コンソールの クイックエントリー では、@@assign 演算子のみがサポートされます。他の演算子を使用するには、[JSON] モードを使用してください。
-
値設定演算子
演算子
説明
@@assign競合する設定を上書きします。
-
アタッチされたポリシーの設定が継承されたポリシーと競合する場合、アタッチされたポリシーが優先されます。
-
アタッチされた複数のポリシーで
@@assign設定が競合する場合、最初にアタッチされたポリシーが優先されます。
@@appendアタッチされたポリシーの設定を継承されたポリシーに追加します。タグキーに複数のタグ値が指定されている場合にのみ適用されます。
@@remove指定された設定を継承されたポリシーから削除します。タグキーに複数のタグ値が指定されている場合にのみ適用されます。
-
-
子制御演算子
子制御演算子は、子ポリシーが使用できる値設定演算子を制限します。デフォルトでは、すべての値設定演算子が許可されます。
演算子
説明
"@@operators_allowed_for_child_policies":["@@all"]サブフォルダーおよびメンバーにアタッチされた子ポリシーで、すべての値設定演算子を許可します。これはデフォルトの動作です。
"@@operators_allowed_for_child_policies":["@@assign"]子ポリシーを、指定された値設定演算子のみの使用に制限します。1 つ以上の演算子を指定できます。
"@@operators_allowed_for_child_policies":["@@none"]子ポリシーのすべての値設定演算子をブロックします。親ポリシーの設定をロックし、それを有効なポリシーとして適用します。