sco*_*ttb 3 amazon-web-services amazon-iam
我的密码策略配置为允许用户更改他们的密码,但是当我使用“必须更改密码”选项创建新用户时,用户会被告知他们需要“iam:ChangePassword”权限。
当他们尝试使用 CLI 更改它时,他们会收到类似的消息。
知道如何诊断和解决这个问题吗?
小智 9
我遇到了同样的问题。新用户收到以下错误消息:
用户无权执行 iam:ChangePassword 或输入的密码不符合管理员设置的帐户密码策略
尽管设置了“允许用户更改自己的密码”选项。显式添加iam:ChangePassword
权限也没有帮助。
在我的案例中,问题是我们有一个强制 MFA 身份验证的策略,但是当用户第一次登录时,他们显然还没有设置 MFA。
删除 MFA 政策为我解决了这个问题。
小智 7
我遇到了同样的问题,我发现您可以免除必须进行 MFA 的操作:
{
"Sid": "DenyAllExceptListedIfNoMFA",
"Effect": "Deny",
"NotAction": [
"iam:CreateVirtualMFADevice",
"iam:EnableMFADevice",
"iam:GetUser",
"iam:ListMFADevices",
"iam:ListVirtualMFADevices",
"iam:ResyncMFADevice",
"sts:GetSessionToken",
"iam:ChangePassword"
],
"Resource": "*",
"Condition": {
"BoolIfExists": {
"aws:MultiFactorAuthPresent": "false"
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是生成的策略,例外列表中没有 Changepassword。除 NotAction 列表中的操作外,策略禁止任何未经 MFA 的访问。您需要将“iam:ChangePassword”添加到列表中
您没有包含您制定的策略,但从错误消息中可以清楚地看出该用户没有ChangePassword
权限。
下面的参考资料提供了所有详细信息,但一般来说,您需要确保您的使用附带符合以下条件的政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:GetAccountPasswordPolicy",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "iam:ChangePassword",
"Resource": "arn:aws:iam::account-id-without-hyphens:user/${aws:username}"
}
]
}
Run Code Online (Sandbox Code Playgroud)
参考
归档时间: |
|
查看次数: |
5007 次 |
最近记录: |