![AWS 中的 MFA 身份验证](https://linux22.com/image/722024/AWS%20%E4%B8%AD%E7%9A%84%20MFA%20%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81.png)
以下两个条件有什么区别?此条件附加到附加到用户的客户管理策略。该策略将允许用户对 EC2 实例执行任何操作,但用户只能通过 MFA 设备进行身份验证才能停止/终止 EC2 实例。
"Effect": "Allow"
"Condition": {"Bool": {"aws:MultiFactorAuthPresent": "true"}}
"Effect": "Allow"
"Condition": {"BoolIfExists": {"aws:MultiFactorAuthPresent": "true"}}
PS:AWS 文档中有相同的示例,语法是从那里复制的。我发布这个问题是因为我无法理解“IfExists”总体上有什么不同。
答案1
如果我理解正确的话,这在策略用于许多资源时会发生。其中一些资源可能没有该条件作为选项,并且可能无法通过策略检查。因此,此附加选项会将其调整为仅具有该选项的资源,或者它“存在”。