You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS CLI操作:如何为Azure AD关联的AWS SSO角色附加IAM策略

用AWS CLI为Azure AD关联的AWS SSO角色附加DynamoDB权限策略

AWS SSO中,Azure AD用户关联的账户角色是由**权限集(Permission Set)**在目标账户中自动生成的托管角色,直接修改账户内的角色会被SSO覆盖,因此正确操作是将策略附加到对应的权限集。以下是具体步骤:

1. 获取AWS SSO实例ARN

先列出当前组织下的SSO实例,拿到目标实例的ARN:

aws sso-admin list-instances

输出中会包含类似 arn:aws:sso:::instance/ssoins-xxxxxx 的实例ARN,记下来备用。

2. 定位用户X关联的权限集

列出该SSO实例下的所有权限集,找到用户X被分配到的、对应AWS账户A的权限集ARN:

aws sso-admin list-permission-sets --instance-arn <你的SSO实例ARN>

如果知道权限集名称,也可以直接查询其ARN:

aws sso-admin describe-permission-set --instance-arn <你的SSO实例ARN> --permission-set-arn <权限集ARN>

3. 附加DynamoDB策略到权限集

如果是托管策略,用以下命令将账户A中已创建的DynamoDB策略ARN附加到目标权限集:

aws sso-admin attach-managed-policy-to-permission-set \
    --instance-arn <你的SSO实例ARN> \
    --permission-set-arn <目标权限集ARN> \
    --managed-policy-arn <账户A的DynamoDB策略ARN>

如果是内联策略,替换为以下命令(注意替换JSON内容为实际权限规则):

aws sso-admin put-inline-policy-to-permission-set \
    --instance-arn <你的SSO实例ARN> \
    --permission-set-arn <目标权限集ARN> \
    --inline-policy '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Action":"dynamodb:*","Resource":"*"}]}'

4. 验证策略附加结果

确认策略已成功添加到权限集:

aws sso-admin list-managed-policies-in-permission-set \
    --instance-arn <你的SSO实例ARN> \
    --permission-set-arn <目标权限集ARN>

关键注意点

  • 权限集更新后,用户X需要重新登录AWS SSO才能获取新的权限,现有会话不会自动刷新
  • 执行CLI命令的身份必须拥有sso-admin:AttachManagedPolicyToPermissionSet或sso-admin:PutInlinePolicyToPermissionSet等对应权限
  • 不要直接修改账户A内的SSO托管角色,否则后续SSO同步会覆盖你的修改

内容的提问来源于stack exchange,提问作者mon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 07:25:55