IAM: 특정 IAM 사용자가 프로그래밍 방식으로, 그리고 콘솔에서 그룹을 관리하도록 허용 - AWS Identity and Access Management

IAM: 특정 IAM 사용자가 프로그래밍 방식으로, 그리고 콘솔에서 그룹을 관리하도록 허용

이 예제는 특정 IAM 사용자가 AllUsers 그룹을 관리하도록 허용하는 아이덴티티 기반 정책을 생성하는 방법을 보여줍니다. 이 정책은 프로그래밍 방식 및 콘솔 액세스에 대한 권한을 정의합니다. 이 정책을 사용하려면 정책 예제의 기울임꼴 자리 표시자 텍스트를 본인의 정보로 대체하세요. 그런 다음 정책 생성 또는 정책 편집의 지침을 따릅니다.

이 정책이 하는 일은 무엇입니까?

  • AllowAllUsersToListAllGroups 문은 모든 그룹의 표시를 허용합니다. 이는 콘솔 액세스에 대해 필수입니다. 이 권한은 리소스 ARN을 지원하지 않으므로 자신의 문에 들어 있어야 합니다. 권한 대신 "Resource" : "*"를 지정합니다.

  • AllowAllUsersToViewAndManageThisGroup 문은 그룹 리소스 유형에서 수행할 수 있는 모든 그룹 작업을 허용합니다. 사용자 리소스 유형에서는 수행할 수 있지만 그룹 리소스 유형에서 수행할 수 없는 ListGroupsForUser 작업은 허용하지 않습니다. IAM 작업에 지정할 수 있는 리소스 유형에 대한 자세한 내용은AWS Identity and Access Management 에서 사용되는 작업, 리소스 및 조건 키를 참조하세요.

  • LimitGroupManagementAccessToSpecificUsers 문은 이름이 지정된 사용자의 쓰기 액세스와 그룹 작업 관리 권한을 거부합니다. 정책에 지정된 사용자가 그룹을 변경하려는 경우 문에서 이 요청을 거부합니다. 해당 요청은 AllowAllUsersToViewAndManageThisGroup 문에서 허용합니다. 다른 사용자가 이 작업을 수행하려는 경우 요청은 거부됩니다. IAM 콘솔에서 이 정책을 생성하는 동안 쓰기 또는 권한 관리로 정의된 IAM 작업을 볼 수 있습니다. 이를 수행하려면 JSON 탭에서 시각적 편집기 탭으로 전환합니다. 액세스 수준에 대한 자세한 내용은 AWS 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" ] } } } ] }