IAM:允许特定的 IAM 用户以编程方式和在控制台中管理组 - Amazon Identity and Access Management
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

IAM:允许特定的 IAM 用户以编程方式和在控制台中管理组

此示例说明如何创建基于身份的策略以允许特定 IAM 用户管理 AllUsers 组。此策略定义了程序访问和控制台访问的权限。要使用此策略,请将示例策略中的斜体占位符文本替换为您自己的信息。然后,按照创建策略编辑策略中的说明操作。

此策略有何作用?

  • AllowAllUsersToListAllGroups 语句允许列出所有组。这对于控制台访问是必需的。该权限必须位于自己的语句中,因为它不支持资源 ARN。相反,权限指定 "Resource" : "*"

  • AllowAllUsersToViewAndManageThisGroup 语句允许可以对组资源类型执行的所有组操作。它不允许执行 ListGroupsForUser 操作,可以对用户资源类型执行该操作,但不能对组资源类型执行该操作。有关可以为 IAM 操作指定的资源类型的更多信息,请参阅 Amazon Identity and Access Management 的操作、资源和条件键

  • LimitGroupManagementAccessToSpecificUsers 语句拒绝具有指定名称的用户访问以执行写入和权限管理组操作。如果策略中指定的用户尝试对组进行更改,该语句不会拒绝请求。AllowAllUsersToViewAndManageThisGroup 语句允许该请求。如果其他用户尝试执行这些操作,则会拒绝该请求。在 IAM 控制台中创建该策略时,您可以查看使用写入权限管理访问级别定义的 IAM 操作。为此,请从 JSON 选项卡切换到可视化编辑器选项卡。有关访问级别的更多信息,请参阅 Amazon Identity and Access Management 的操作、资源和条件键

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAllUsersToListAllGroups", "Effect": "Allow", "Action": "iam:ListGroups", "Resource": "*" }, { "Sid": "AllowAllUsersToViewAndManageThisGroup", "Effect": "Allow", "Action": "iam:*Group*", "Resource": "arn:aws:iam::*:group/AllUsers" }, { "Sid": "LimitGroupManagementAccessToSpecificUsers", "Effect": "Deny", "Action": [ "iam:AddUserToGroup", "iam:CreateGroup", "iam:RemoveUserFromGroup", "iam:DeleteGroup", "iam:AttachGroupPolicy", "iam:UpdateGroup", "iam:DetachGroupPolicy", "iam:DeleteGroupPolicy", "iam:PutGroupPolicy" ], "Resource": "arn:aws:iam::*:group/AllUsers", "Condition": { "StringNotEquals": { "aws:username": [ "srodriguez", "mjackson", "adesai" ] } } } ] }