我已经在我的 iPhone 中安装了 Google 身份验证器,我正在使用它来登录我的 AWS 根账户。我还想使用相应的令牌生成器 Android 应用程序添加使用我的 Android 手机使用 MFA 登录的功能。
是否可以添加第二个设备以及如何添加?还是 AWS 根账户 MFA 绑定到一个(虚拟)设备?
我已经在我的 iPhone 中安装了 Google 身份验证器,我正在使用它来登录我的 AWS 根账户。我还想使用相应的令牌生成器 Android 应用程序添加使用我的 Android 手机使用 MFA 登录的功能。
是否可以添加第二个设备以及如何添加?还是 AWS 根账户 MFA 绑定到一个(虚拟)设备?
您只能将一台 MFA 设备绑定到您的 root 帐户。您需要为单独的设备设置单独的 IAM 用户帐户。
从常见问题解答:
问:我可以为我的 AWS 账户启用多个身份验证设备吗? 是的。每个 IAM 用户都可以拥有自己的身份验证设备。但是,每个身份(IAM 用户或根账户)只能与一个身份验证设备关联。
更新:因此,虽然它没有得到官方支持,但有一个人声称他能够通过使用相同的 QR 码同时在两台设备上注册 Google Authenticator。诚然,他没有使用 AWS 执行此操作,但值得一试。
https://www.quora.com/Can-Google-Authenticator-be-used-on-multiple-devices
更新 2:我已经开始将Authy用于 MFA 而不是 Google Authenticator。Authy 现在支持的一项很酷的事情是用于所有 MFA 令牌的多设备。我目前的手机和平板电脑设置可以使用 Authy Multi Device 访问我的 AWS 账户。
这是解决方案;当 AWS MFA 页面显示条形码时,同时扫描来自不同设备(我尝试过 3 个)的条形码。他们创建相同的代码,用相同的代码填写表格并且它可以工作。
这并不是一个真正的新答案,但它试图澄清并更好地解释(或至少不同地)为什么不同的虚拟设备可以被视为一个虚拟设备
目前(2020-05-07)您不能为同一用户拥有两个不同的身份验证设备。(如以下多个:U2F usb 密钥/虚拟设备/硬件设备)
但是,您可以在多个设备(手机/平板电脑/PC)上安装相同的虚拟设备应用程序,如果您使用相同的初始化代码(QR 代码)将它们全部初始化
Virtual MFA 设备只是 TOTP 算法的实现(https://en.wikipedia.org/wiki/Time-based_One-time_Password_algorithm)
每个 TOTP 应用程序都必须使用“秘密”代码(二维码)进行初始化
因此,如果您使用不同的 TOTP 应用程序扫描相同的 QR 码,那么所有这些应用程序都可以进行身份验证(它们的行为相同)
在 AWS 进行初始化时,系统会要求您输入 TOTP 应用程序生成的两个连续代码。(只需从您使用 QR 码初始化的任何应用程序中输入它们。或者,如果您真的很疯狂。使用一个应用程序创建一个代码,然后使用另一个应用程序创建另一个代码。只需输入首先生成的代码)
之后,所有虚拟设备都将工作并且完全可以互换。
您甚至可以将 QR 码图像“存档”在安全的地方,稍后再添加其他虚拟设备(QR 码仅包含初始化 TOTP 应用程序所需的秘密)。它不会过期。
来自 AWS Organizations文档:
如果您选择使用虚拟 MFA 应用程序,那么与我们对主账户根用户的建议不同,对于成员账户,您可以为多个成员账户重复使用单个 MFA 设备。您可以通过打印并安全存储用于在虚拟 MFA 应用程序中配置帐户的 QR 码来解决地理限制。根据您的信息安全政策,记录 QR 码的用途,并将其密封并存储在您所在时区的可访问保险箱中。然后,当需要在不同的地理位置进行访问时,可以检索 QR 码的本地副本并将其用于在新位置配置虚拟 MFA 应用程序。
实际上,我尝试在 iPhone、iPad 和使用 Google Authenticator 的 Android 上使用来自 AWS 的相同秘密配置密钥,它们都运行良好。与@Jaap 所做的相同。
除了上述解决方案:
1) 将 MFA 设备附加到 AWS 账户后,您无法重新显示 QR 码。因此,如果您需要添加另一个虚拟 MFA 设备,请删除现有设备,重新附加它,并将二维码截屏(或保存密码),然后用另一台设备扫描此二维码。
2) 二维码不会过期。我可以在初始化几周后使用我的代码。