タグを使用して 5〜10 個の Amazon EC2 インスタンスのグループへのアクセスを管理する IAM ポリシーの作成方法を教えてください。​

小規模なデプロイの EC2 インスタンス (同時に 5〜10 個のインスタンス) へのアクセスを管理するには、次の操作を行います。

  1. ユーザーやグループに対してアクセスを許可するインスタンスに特定のタグを追加します。
  2. 特定のタグを追加したインスタンスへのアクセスを許可する IAM ポリシーを作成します。
  3. インスタンスへのアクセスを許可するユーザーやグループに、この IAM ポリシーをアタッチします。

EC2 インスタンスのグループにタグを追加する

Amazon EC2 コンソールを開き、ユーザーやグループに対してアクセスを許可する EC2 インスタンスのグループにタグを追加します。既存のタグがない場合は、新しいタグを作成します。

: リソースにタグを付ける前に、「タグの制限」に目を通してよく理解してください。EC2 タグの大文字と小文字は区別されます。

特定のタグを付けたインスタンスへのアクセスを許可する IAM ポリシーを作成する

以下を実行する IAM ポリシーを作成します。

  • タグが付いたインスタンスの制御を許可する。
  • ec2:ResourceTag/UserName タグと aws:username ポリシー変数の値をマッチングして EC2 リソースへのアクセスを許可する条件ステートメントを含める。
  • EC2 リソースに対する ec2:Describe* アクションへのアクセスを許可する。
  • ec2:CreateTags アクションと ec2:DeleteTags アクションへのアクセスを明示的に拒否し、ユーザーによるタグの作成や削除を禁止する。
    : これにより、EC2 インスタンスに特定のタグを追加してインスタンスを制御することをユーザーに禁止します。

たとえば、完成したポリシーは次のようになります。

{
    "Version" : "2012-10-17",
        "Statement" :
    [
        {
            "Effect" : "Allow",
            "Action" : "ec2:*",
            "Resource" : "*",
            "Condition" : {
                "StringEquals" : {
                    "ec2:ResourceTag/UserName" : "${aws:username}"
                }
            }
        },
        {
            "Effect" : "Allow",
            "Action" : "ec2:Describe*",
            "Resource" : "*"
        },
        {
            "Effect" : "Deny",
            "Action" :
                [
                 "ec2:CreateTags",
                 "ec2:DeleteTags"
                ],
            "Resource" : "*"
        }        
    ]                                        
}

インスタンスへのアクセスを許可するユーザーやグループに IAM ポリシーをアタッチする

最後に、インスタンスへのアクセスを許可するユーザーやグループに対して、作成した IAM ポリシーをアタッチします。IAM ポリシーをアタッチするには、AWS マネジメントコンソール、AWS CLI、または AWS API を使用できます。


このページは役に立ちましたか? はい | いいえ

AWS サポート ナレッジ センターに戻る

サポートが必要ですか? AWS サポートセンターをご覧ください。

公開日: 2015 年 10 月 12 日

更新 : 2018 年 7 月 19 日