许多 aws sso-admin 命令因 403 失败

问题描述

即使我拥有完全的 AWS 访问权限并且能够在 AWS SSO 控制台中创建内容,以下 CLI 命令仍然失败:

aws sso-admin create-account-assignment 
--instance-arn="arn:aws:sso:::instance/ssoins-xxx" 
--target-id="xyz" 
--target-type="AWS_ACCOUNT" 
--permission-set-arn="arn:aws:sso:::permissionSet/ssoins-xxx/ps-qwe" 
--principal-type="GROUP" 
--principal-id="99672ae6a4-5d62c75e-a849-43a5-bd11-87b2f0c6fdf4"

对于 FailureReason,在描述我收到的请求时:

收到 403 状态错误用户:arn:aws:iam::xyz:user/ivan.aracki.com 无权执行:sso:CreateAccountAssignment on resource: arn:aws:sso:::account/xyz明确拒绝

解决方法

在我们的案例中,这似乎是因为我的用户属于拒绝此请求的 ForceMFA 组。出于某种原因,它并没有拒绝 ec2、s3 或其他 API 调用。可能 sso-admin API 的配置不同。

解决方案是遵循此 authenticate-mfa-cli AWS guide 并导出此调用中返回的变量:

aws sts get-session-token 
--serial-number arn-of-the-mfa-device 
--token-code code-from-token

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...