IAM リソースのタグ付け
タグは、ユーザーが AWS リソースに割り当てることのできるカスタム属性ラベルです。各 タグは 2 つの部分で構成されます。
-
タグキー (例:
CostCenter
、Environment
、Project
、Purpose
)。タグキーでは、大文字と小文字が区別されます。 -
タグ値として知られるオプションのフィールド (例:
111122223333
、Production
、チーム名など)。タグ値を省略すると、空の文字列を使用した場合と同じになります。タグキーと同様に、タグ値は大文字と小文字が区別されます。
これらは共にキーバリューのペアと呼ばれます。IAM リソースで使用できるタグの数の制限については、「IAM と AWS STSクォータ」を参照してください。
タグを使用すると、AWS リソースの特定と整理に役立ちます。多くの AWS のサービスではタグ付けがサポートされるため、さまざまなサービスからリソースに同じタグを割り当てて、リソースの関連を示すことができます。例えば、Amazon S3 バケットに割り当てたタグと同じタグを IAM ロールに割り当てることができます。タグ付け戦略の詳細については、AWS 一般的なリファレンスガイドの「タグ付け AWS リソース」を参照してください。
IAM リソースの特定、整理、追跡に加え、IAM ポリシーのタグを使って、リソースを表示および操作できるユーザーを制御することもできます。タグを使用したアクセスの制御については、「タグを使用した IAM ユーザーおよびロールへのアクセスとそのユーザーおよびロールのアクセスの制御」を参照してください。
AWS STS のタグを使用して、ロールを引き受けるとき、またはユーザーをフェデレートするときにカスタム属性を追加することもできます。詳細については、「AWS STS でのセッションタグの受け渡し」を参照してください。
AWS タグ命名規則を選択する
IAM リソースにタグをアタッチする際は、タグの命名規則を慎重に選択します。すべての AWS タグに同じ規則を適用します。ポリシーでタグを使用して AWS リソースへのアクセスを制御する場合、これは特に重要です。AWS のタグをすでに使用している場合は、命名規則を確認し、必要に応じて調整します。タグ付けのユースケースとベストプラクティスを確認するには、「タグ付けのベストプラクティス
IAM および AWS STS でのタグ付けの規則
IAM および AWS STS でのタグの作成と適用を管理する多数の規則。
命名タグ
AWS STS リソース、 assume-role セッション、AWS STS フェデレーティッドユーザーセッションのタグ命名規則を作成するときは、次の規則に従います。
文字の要件 – タグキーバリューには、文字、数字、空白、記号 (_ . : / = + - @) の任意の組み合わせを使用できます。
大文字と小文字の区別 – タグキーの大文字と小文字の区別は、タグ付けされた リソースの種類によって変わります。IAM ユーザーとロールのタグキーバリューのペアでは、大文字と小文字は区別されませんが、大文字と小文字は維持されます。つまり、Department
と department
のタグキーを別々に持つことはできません。Department=finance
タグでユーザーをタグ付けし、department=hr
タグを追加すると、最初のタグが置き換えられます。2 番目のタグは追加されません。
他の IAM リソースタイプでは、タグキーバリューでは大文字と小文字が区別されます。つまり、Costcenter
と costcenter
タグキーとを個別に使用できます。例えば、カスタマー管理ポリシーに Costcenter = 1234
タグを付け、costcenter =
5678
タグを追加すると、そのポリシーには Costcenter
と costcenter
タグキーの両方が表示されます。
ベストプラクティスとしては、大文字と小文字の扱いに一貫性がない場合は、同様のタグを使用しないことを推奨します。タグを大文字にするため戦略を決定し、その戦略をすべてのリソースタイプにわたって一貫して実装することを推奨します。タグ付けのベストプラクティスの詳細については、AWS 一般的なレファレンスの「AWS リソースのタグ付け」を参照してください。
IAM リソースにアタッチされているタグキーの、大文字と小文字の区別の差異を次に示します。
タグキーバリューでは大文字と小文字が区別されません。
-
IAM ロール
-
IAM ユーザー
タグキーバリューでは大文字と小文字が区別されます。
-
カスタマー管理ポリシー
-
インスタンスプロファイル
-
OpenID Connect ID プロバイダー
-
SAML ID プロバイダー
-
サーバー証明書
-
仮想 MFA デバイス
加えて、次のルールが適用されます。
-
テキスト
aws:
から開始するタグキーや値を作成することはできません。このタグプレフィックスは AWS 社内使用のために予約されています。 -
空の値 (例:
phoneNumber =
) を含むタグを作成することができます。空のタグキーを作成することはできません。 -
1 つのタグで複数の値を指定することはできませんが、カスタムの複数値構造を 1 つの値で作成することができます。たとえば、ユーザー Zhang がエンジニアリングチーム、QA チームで働いているとします。
team = Engineering
タグ、team = QA
タグの順にアタッチする場合は、タグの値をEngineering
からQA
に変更します。代わりに、カスタム区切り文字を使用して 1 つのタグに複数の値を含めることができます。この例では、team = Engineering:QA
タグを Zhang にアタッチします。注記 team
タグを使用して、この例のエンジニアへのアクセスを制御するには、Engineering
を含む可能性のある各設定を許可するポリシー (例:Engineering:QA
) を作成する必要があります。ポリシーのタグの使用の詳細については、「タグを使用した IAM ユーザーおよびロールへのアクセスとそのユーザーおよびロールのアクセスの制御」を参照してください。
タグの適用と編集
タグを IAM リソースにアタッチするときは、次の規則に従います。
-
ほとんどの IAM リソースにはタグ付けが可能ですが、グループ、委任されたロール、アクセスレポート、ハードウェアベース、SMS MFA デバイスにはタグ付けできません。
-
タグエディタを使って IAM リソースにタグ付けすることはできません。タグエディタは IAM タグをサポートしていません。他のサービスでのタグエディタの使用については、AWS Resource Groupsユーザーガイドの「タグエディタの使用」を参照してください。
-
IAM リソースにタグ付けするには、特定のアクセス許可が必要です。リソースにタグを付ける、またはタグを解除するには、タグを一覧表示するアクセス許可も必要です。詳細については、このページの最後にある各 IAM リソースのトピックのリストを参照してください。
-
AWS アカウントの IAM リソースの数とサイズには制限があります。詳細については、「IAM と AWS STSクォータ」を参照してください。
-
同じタグを複数の IAM リソースに適用することができます。たとえば、
AWS_Development
という名前の部門に 12 人のメンバーがあるとします。12 人のユーザーと、department
のタグキー、awsDevelopment
の値を持つロールを持つことができます (department = awsDevelopment
)。また、タグ付けをサポートする他のサービスのリソースで同じタグを使用することもできます。 -
IAM エンティティ (ユーザーまたはロール) は、タグキーが同じである複数のインスタンスを持つことはできません。たとえば、タグのキーバリューのペア
costCenter = 1234
を含むユーザーがいる場合は、タグキーバリューのペアcostCenter = 5678
をアタッチできます。IAM は、costCenter
タグの値を5678
に更新します。 -
IAM エンティティ (ユーザーまたはロール) にアタッチされているタグを編集するには、新しい値のタグをアタッチして、既存のタグを上書きします。例えば、タグのキーバリューのペア
department = Engineering
を持つユーザーがいるとします。そのユーザーを QA 部門に移動させる必要がある場合、department = QA
タグのキーバリューのペアをこのユーザーにアタッチします。その結果、Engineering
タグキーのdepartment
値は、QA
値に置き換わります。
トピック