如何创建AWS SCP条件,拒绝关联特定PermissionSet的AzureAD用户EC2操作?
补充后的AWS SCP完整配置
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": ["ec2:*"], "Resource": "*", "Condition": { "StringEquals": { "sso:PermissionSetArn": "arn:aws:sso:::permissionSet/ssoins-<你的SSO实例ID>/ps-<noEC2权限集ID>" } } } ] }
关键说明
- 修正了原JSON的语法错误:Condition必须嵌套在单个Statement对象内部,而非与Statement数组同级
- 条件逻辑:通过
sso:PermissionSetArn条件键匹配关联到「noEC2」PermissionSet的用户会话,拒绝这类用户执行所有EC2操作 - 需将
<你的SSO实例ID>和<noEC2权限集ID>替换为实际值,可在AWS IAM Identity Center控制台的权限集详情页获取对应ARN
替代方案(基于标签)
如果已给「noEC2」PermissionSet添加标签(例如PermissionSetType: noEC2),也可使用标签匹配的条件,灵活性更高:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": ["ec2:*"], "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalTag/PermissionSetType": "noEC2" } } } ] }
内容的提问来源于stack exchange,提问作者wizard
相关产品推荐
相关产品推荐

