是否可以在AWS上为所有用户强制执行MFA?

时间:2017-02-03 21:09:18

标签: amazon-web-services

我试图强制所有用户在注册时设置MFA登录信息。这是否可以在AWS中实现,以及如何或在何处执行此操作?

3 个答案:

答案 0 :(得分:3)

排序。实际上,您可以阻止非管理员用户在不使用MFA的情况下进行API调用。有一节关于在此AWS blog post中进行设置。该博客文章介绍了如何授予某人访问设置MFA的权限,并且需要MFA用于与AWS API的每次其他交互。我认为这将要求MFA与SDK和CLI的调用一起使用,因此它可能不是您想要的。

另外,我说这只适用于非管理员用户,因为管理员用户可以进入并禁用其帐户的MFA限制。

答案 1 :(得分:1)

这很难做到,因为需要设置MFA设备,一旦这样做,您需要从设备输入信息。通常,您必须按顺序输入两个令牌以“同步”设备。

因此,如果没有用户,您无法为用户设置虚拟MFA。但是,如果您有硬件MFA设备(请参阅https://aws.amazon.com/iam/details/mfa/),则可以设置用户和设备,然后向用户提供设备。

无论如何都不是完美的。

答案 2 :(得分:0)

是的,这绝对可以做到!当然,管理员和root用户可以禁用该策略,但是如果您愿意,还可以限制谁可以更新或禁用该策略。实施策略生效后,用户登录时,他们唯一有权访问的就是为其IAM用户启用MFA。在启用了MFA的情况下重新登录后,便可以使用IAM策略/组成员身份等获得对他们的访问权限。

不可能仅在AWS Web控制台中强制执行MFA,因为Web控制台本质上是AWS CLI工具还访问的API的前端。在命令行上启动和管理MFA(和角色)会话是一个相当复杂的过程,因此您可能对我刚刚发布的2.0版本的实用程序感兴趣。它使启动和管理MFA和角色会话变得非常容易。我还提供了一个示例实施策略,该策略已精心构建以与该实用程序一起使用。还提供了一个伴随脚本,以简化从命令行启用/分配MFA设备的操作(例如,对于没有Web控制台访问权限的用户)。

您可以在https://github.com/vwal/awscli-mfa

的我的GitHub中找到该实用程序,有关它的更多信息以及示例策略。