Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services AWS IAM强制MFA,但允许首次更改密码_Amazon Web Services_Amazon Iam_Multi Factor Authentication - Fatal编程技术网

Amazon web services AWS IAM强制MFA,但允许首次更改密码

Amazon web services AWS IAM强制MFA,但允许首次更改密码,amazon-web-services,amazon-iam,multi-factor-authentication,Amazon Web Services,Amazon Iam,Multi Factor Authentication,如何强制AWS IAM用户使用MFA,但允许他们在首次登录时更改密码 如果您遵循并强制使用MFA,则新用户在首次获得帐户时无法更改密码 我知道您可以选择或,并允许用户管理自己的密码和凭据。此外,AWS有办法解决该问题,但不建议: 此示例策略不允许用户在 登录。新用户和密码过期的用户可能会尝试 这样做。您可以通过将iam:ChangePassword添加到 声明DenyAllExceptListedIfNoMFA。但是,IAM不建议 这允许用户在不使用MFA的情况下更改密码可能是一种错误 安全风险

如何强制AWS IAM用户使用MFA,但允许他们在首次登录时更改密码

如果您遵循并强制使用MFA,则新用户在首次获得帐户时无法更改密码

我知道您可以选择或,并允许用户管理自己的密码和凭据。此外,AWS有办法解决该问题,但不建议:

此示例策略不允许用户在 登录。新用户和密码过期的用户可能会尝试 这样做。您可以通过将iam:ChangePassword添加到 声明DenyAllExceptListedIfNoMFA。但是,IAM不建议 这允许用户在不使用MFA的情况下更改密码可能是一种错误 安全风险

那么“推荐”的方式是什么


这个问题也没有真正的答案。

这里推荐的方法是使用,但我提出了一个手册,一个策略解决方案,如果您还没有SSO,可以更轻松地进行管理。我的解决方案仍然存在风险,但其范围仅限于初始帐户设置过程。它包括使用
NewUser
标记手动标记新IAM用户,然后在他们重置密码并配置MFA后手动解除标记

以下指南假设您正在使用

编辑
“Sid”:“DenyAllExceptListedIfNoMFA”
块所在的MFA策略,并将其替换为以下内容:

{
“Sid”:“DenyalLexCeptListedIfNomfa和NewUser”,
“效果”:“拒绝”,
“注释”:[
“iam:CreateVirtualFaDevice”,
“iam:启用FaDevice”,
“iam:GetUser”,
“iam:ListMFADevices”,
“iam:ListVirtualFaDevices”,
“iam:ResyncMFADevice”,
“sts:GetSessionToken”,
“iam:更改密码”
],
“资源”:“*”,
“条件”:{
“BoolIfExists”:{
“aws:多因素存在”:“错误”
}
}
},
{
“Sid”:“DenyAllExceptListedIfNoMFA”,
“效果”:“拒绝”,
“注释”:[
“iam:CreateVirtualFaDevice”,
“iam:启用FaDevice”,
“iam:GetUser”,
“iam:ListMFADevices”,
“iam:ListVirtualFaDevices”,
“iam:ResyncMFADevice”,
“sts:GetSessionToken”
],
“资源”:“*”,
“条件”:{
“BoolIfExists”:{
“aws:多因素存在”:“错误”
},
“StringNoteQualsiExists”:{
“iam:ResourceTag/NewUser”:“true”
}
}
}
创建一个新用户并添加一个
NewUser
标记,其值设置为
true

将凭据发送给新用户。首次登录后,从IAM用户资源中删除
NewUser
标记

你可以看到