在 Amazon CLI 或 Amazon API 中分配 MFA 设备 - Amazon Identity and Access Management
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

在 Amazon CLI 或 Amazon API 中分配 MFA 设备

您可以使用 Amazon CLI 命令或 Amazon API 操作为 IAM 用户启用虚拟 MFA 设备。您无法使用 Amazon CLI、Amazon API、Tools for Windows PowerShell 或任何其他命令行工具为 Amazon Web Services 账户根用户 启用 MFA 设备。不过,可以使用 Amazon Web Services Management Console 为根用户启用 MFA 设备。

当您从 Amazon Web Services Management Console启用 MFA 设备时,控制台会为您执行多个步骤。如果您改用 Amazon CLI、Tools for Windows PowerShell 或 Amazon API 创建虚拟设备,则必须按正确的顺序手动执行这些步骤。例如,要创建虚拟 MFA 设备,您必须创建 IAM 对象,将代码提取为字符串或 QR 代码图形。然后,您必须同步该设备并将其与 IAM 用户关联。有关更多详细信息,请参阅 New-IAMVirtualMFADeviceExamples(示例)部分。对于物理设备,您可以跳过创建步骤,直接同步该设备并将其与用户关联。

您可以将标签附加到 IAM 资源(包括虚拟 MFA 设备),以识别、组织和控制对这些资源的访问。只有在使用 Amazon CLI 或 Amazon API 时,才能标记虚拟 MFA 设备。

使用 SDK 或 CLI 的 IAM 用户可以通过调用 EnableMFADevice 来启用其他 MFA 设备,也可以通过调用 DeactivateMFADevice 来停用现有的 MFA 设备。要成功执行此操作,用户必须首先调用 GetSessionToken 并使用一个现有的 MFA 设备提交 MFA 代码。此调用将会返回临时安全凭证,然后才可以使用这些凭证对需要 MFA 身份验证的 API 操作进行签名。有关示例请求和响应,请参阅 GetSessionToken– 不可信环境中用户的临时凭证

在 IAM 中创建虚拟设备实体来代表虚拟 MFA 设备

这些命令提供在以下很多命令中代替序列号的设备 ARN。

启用 MFA 设备,以便在 Amazon 上使用

这些命令将设备与 Amazon 同步,并将其与用户关联。如果设备是虚拟设备,则将虚拟设备的 ARN 用作序列号。

重要

在生成身份验证代码后立即提交您的请求。如果生成代码后等待很长时间才提交请求,MFA 设备会成功与用户关联,但 MFA 设备无法同步。这是因为基于时间的一次性密码 (TOTP) 很快会过期。如果发生这种情况,可以使用下面介绍的命令重新同步设备。

停用设备

使用这些命令可取消设备与用户的关联并停用设备。如果设备是虚拟设备,则将虚拟设备的 ARN 用作序列号。您还必须单独删除虚拟设备实体。

列出虚拟 MFA 设备实体

使用以下命令列出虚拟 MFA 设备实体。

要标记虚拟 MFA 设备

使用这些命令来标记虚拟 MFA 设备。

要为虚拟 MFA 设备列出标签

使用这些命令列出附加到虚拟 MFA 设备的标签。

要取消虚拟 MFA 设备的标签

使用这些命令删除附加到虚拟 MFA 设备的标签。

重新同步 MFA 设备

如果设备生成的代码不被 Amazon 接受,则使用这些命令。如果设备是虚拟设备,则将虚拟设备的 ARN 用作序列号。

删除 IAM 中的虚拟 MFA 设备实体

在取消设备与用户的关联后,可以删除设备实体。

恢复丢失或无法正常工作的虚拟 MFA 设备

有时,托管虚拟 MFA 应用程序的用户设备丢失、更换或无法正常工作。在这种情况下,用户无法自行将其恢复。该用户必须与管理员联系,才能将设备停用。有关更多信息,请参阅 在 IAM 中恢复受 MFA 保护的身份