49

グループのすべてのメンバーが AWS IAM でロールを引き受けることを許可するにはどうすればよいですか?

次のステートメントを使用してみましたが、AWS IAM Principal Elementで指定されているように、グループをプリンシパルにすることはできません。

私は以下のようなものを達成したい:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::***:group/developer"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

アイデアは、グループのすべてのメンバーがgroup/developerその役割を引き受けることができるべきだということです。目的は、グループ内の各メンバーを個別に指定する必要がないようにすることです。

これを達成する方法はありますか?

4

4 に答える 4

56

sts:AssumeRole目的のロールを呼び出す権限を付与するポリシーをグループにアタッチします。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "123",
            "Effect": "Allow",
            "Action": [
                "sts:AssumeRole"
            ],
            "Resource": [
                "arn:aws:iam::123456789012:role/desired-role"
            ]
        }
    ]
}

また、 Role に Trust Policy をアタッチします。sts:AssumeRoleサンプル ポリシー (以下) は、アカウント内のすべてのユーザーを信頼しますが、ロールを引き受けるには、アクセス許可 (上記)も必要です。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::123456789012:root"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
于 2016-01-22T09:27:37.960 に答える
1

これは別の方法で行うことができます。しかし、これがあなたが望むものかどうかはわかりません。

1) create-policyを使用してポリシーを作成します。
2) attach-role-policyarn:aws:iam::***:role/developerを使用してポリシーをロールにアタッチします。 3) create-groupを使用して意図したものを作成します。4) attach-group-policy を使用して、指定された管理ポリシーを指定されたグループにアタッチします。
Group

CLI を使用する代わりに、AWS コンソールまたは AWS SDK を使用して同じことを実現できます。ポリシーを IAM グループにアタッチするを参照してください。

これにより、グループ内の各メンバーに個別にロールを追加する必要がなくなります。

于 2016-01-21T16:42:58.000 に答える