如何通过AWS CLI查询分配给权限集的SSO用户/用户组信息
实现方案
- 首先明确:该需求可以通过AWS CLI实现,你之前对Identity Store API的功能理解存在偏差,该API同时支持按ID查询单个用户/用户组、全量列出所有用户/用户组的操作。
- 第一步:获取AWS SSO身份中心对应的Identity Store ID
执行指令:
返回结果中的aws sso-admin list-instancesIdentityStoreId字段即为后续查询需要用到的标识。 - 第二步:获取权限集关联的主体信息
你之前调用的list-account-assignments接口已经可以返回核心关联信息,注意返回结果中的PrincipalType字段会明确标识该PrincipalId对应的是USER(用户)还是GROUP(用户组),指令示例:aws sso-admin list-account-assignments --instance-arn <SSO实例ARN> --account-id <目标AWS账号ID> --permission-set-arn <目标权限集ARN> - 第三步:查询PrincipalId对应的实际名称
根据上一步拿到的PrincipalType选择对应指令查询即可,返回结果中的DisplayName字段即为AWS控制台UI展示的用户/用户组名称:- 若为用户,执行:
aws identitystore describe-user --identity-store-id <第一步拿到的IdentityStoreId> --user-id <PrincipalId> - 若为用户组,执行:
aws identitystore describe-group --identity-store-id <第一步拿到的IdentityStoreId> --group-id <PrincipalId>
- 若为用户,执行:
- 若需要批量导出所有权限集对应的用户/用户组映射,可通过简单的shell脚本循环调用上述指令完成,返回结果和控制台展示的信息完全一致。
内容的提问来源于stack exchange,提问作者ire
相关产品推荐
相关产品推荐

