すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:タグを使用したリソース権限の管理

最終更新日:Apr 28, 2026

ECS リソースにタグを付与し、Resource Access Management (RAM) ポリシーを使用して、カテゴリ単位の詳細なアクセスの制御を実施します。

タグベースの権限を使用する理由

リソースグループとは異なり、タグは 1 つのリソースに対して複数のラベルを付与できるため、リージョン、部門、環境、またはその他のディメンションで分類できます。

タグベースの RAM ポリシーには、以下の 3 つの利点があります。

  • 詳細な制御:ロールの割り当て範囲を広げることなく、リソースのサブセットに対して権限をスコープできます。

  • ポリシーの保守負荷軽減:1 つのタグ条件付きポリシーでリソースクラス全体をカバーできるため、インフラストラクチャが拡大してもポリシー数を抑制できます。

  • ビジネスに即した属性:タグキーと値はプロジェクト名、コストセンター、デプロイメント段階などの命名規則を反映するため、ポリシーの監査が容易になります。

ベストプラクティス

同じビジネス機能を持つ ECS インスタンスにタグを付与し、RAM ポリシーの条件でそのタグを参照してアクセスルールを適用します。

以下の例では、データベース用にタグ付けされた ECS インスタンスにパブリック IP アドレスを割り当てることを防止します。

ステップ 1:インスタンスへのタグ付与

ECS インスタンスにタグを追加します。詳細については、「タグの概要」をご参照ください。

この例では、タグは function:database です。

ステップ 2:タグ条件付き RAM ポリシーの作成

以下の RAM ポリシーを作成し、対象の RAM ユーザーまたはロールにアタッチします。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Deny",
      "Action": [
        "ecs:ModifyInstanceNetworkSpec"
      ],
      "Resource": "acs:ecs:*:*:instance/*",
      "Condition": {
        "StringEquals": {
          "acs:ResourceTag/function:database": ["*"]
        },
        "Bool": {
          "ecs:AssociatePublicIpAddress": ["true"]
        }
      }
    }
  ]
}

主なポリシー要素:

要素 説明
Effect Deny すべての条件が満たされた場合に操作をブロックします。
Action ecs:ModifyInstanceNetworkSpec インスタンスのネットワーク構成操作を対象とします。
Resource acs:ecs:*:*:instance/* すべてのリージョンおよびアカウントの全 ECS インスタンスに適用されます。
acs:ResourceTag/function:database ["*"] function:database タグが付与されたインスタンスに一致します。
ecs:AssociatePublicIpAddress ["true"] パブリック IP アドレスを割り当てるリクエストに一致します。

結果

ポリシーがアクティブになると、ModifyInstanceNetworkSpec 操作で function:database タグが付与されたインスタンスにパブリック IP アドレスを割り当てようとするリクエストはすべて拒否されます。タグが付与されていないインスタンスには影響しません。