Удалить пользователя AWS IAM, который имеет только определенный тег, с помощью Cloudformation (условие)
Я пытаюсь разрешить пользователям IAM (OperationsAdmin) в определенной группе (группа OperationsAdmin) удалять пользователей с определенным тегом (тег, указывающий, что администратор создал пользователя).
Это то, что можно сделать в Cloudformation? Я пробовал это, но это не работает. Другие пользователи-администраторы в других группах администраторов могут удалять пользователей, которых они не должны иметь. Любые мысли о том, как сделать это с помощью cloudformation, используя yaml?
OperationsUserGroupAdmin:
Type: AWS::IAM::Group
Properties:
GroupName: !Sub OperationsUserGroupAdmin-${StackName}
Path: "/"
Policies:
- PolicyName: !Sub OperationsUserGroupAdminPolicy-${StackName}
PolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Action:
- "iam:AddUserToGroup"
- "iam:RemoveUserFromGroup"
Resource:
- !Sub "arn:aws:iam::*:group/OperationsUserGroup-${StackName}"
- Effect: Allow
Sid: DeleteUser
Action:
- "iam:DeleteUser"
Resource: 'arn:aws:iam::*:user/*'
Condition:
StringEquals:
aws:RequestTag/CreatedBy:
- OperationsAdmin
1 ответ
Я смог найти ответ. По сути, я использовал неправильное условие. Я должен был использовать «aws:ResourceTag»:
- Effect: Allow
Sid: DeleteUser
Action:
- "iam:DeleteUser"
Resource: 'arn:aws:iam::*:user/*'
Condition:
StringEquals:
aws:ResourceTag/CreatedBy:
- OperationsAdmin