

# 重新同步虚拟和硬件 MFA 设备


您可以使用 Amazon 重新同步虚拟和硬件 Multi-Factor Authentication (MFA) 设备。如果您尝试使用的设备并未同步，则将导致用户的登录尝试失败，IAM 会提示您重新同步设备。

**注意**  
FIDO 安全密钥不同步。如果 FIDO 安全密钥丢失或损坏，您可以将其停用。有关停用任何 MFA 设备类型的说明，请参阅[停用其他 IAM 用户的 MFA 设备（控制台）](id_credentials_mfa_disable.md#deactivate-mfa-for-user)。

作为 Amazon 管理员，您可以重新同步您的 IAM 用户无法同步的虚拟和硬件 MFA 设备。

如果您的 Amazon Web Services 账户根用户 MFA 设备不工作，可以使用 IAM 控制台重新同步该设备（完成登录过程与否均可实现）。如果您无法成功地重新同步设备，则可能需要取消关联并重新关联该设备。有关此操作的更多信息，请参阅 [停用 MFA 设备](id_credentials_mfa_disable.md) 和 [IAM 中的 Amazon 多重身份验证](id_credentials_mfa.md)。

**Topics**
+ [

## 所需权限
](#id_credentials_mfa_sync_console-permissions-required)
+ [

## 重新同步虚拟和硬件 MFA 设备（IAM 控制台）
](#id_credentials_mfa_sync_console)
+ [

## 重新同步虚拟和硬件 MFA 设备 (Amazon CLI)
](#id_credentials_mfa_sync_cli)
+ [

## 重新同步虚拟和硬件 MFA 设备 (Amazon API)
](#id_credentials_mfa_sync_api)

## 所需权限


要为您自己的 IAM 用户重新同步虚拟或硬件 MFA 设备，您必须具有以下策略的权限。此策略不允许您创建或停用设备。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowListActions",
            "Effect": "Allow",
            "Action": [
                "iam:ListVirtualMFADevices"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowUserToViewAndManageTheirOwnUserMFA",
            "Effect": "Allow",
            "Action": [
                "iam:ListMFADevices",
                "iam:ResyncMFADevice"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "BlockAllExceptListedIfNoMFA",
            "Effect": "Deny",
            "NotAction": [
                "iam:ListMFADevices",
                "iam:ListVirtualMFADevices",
                "iam:ResyncMFADevice"
            ],
            "Resource": "*",
            "Condition": {
                "BoolIfExists": {
                    "aws:MultiFactorAuthPresent": "false"
                }
            }
        }
    ]
}
```

------

## 重新同步虚拟和硬件 MFA 设备（IAM 控制台）


您可以使用 IAM 控制台重新同步虚拟和硬件 MFA 设备。

**重新同步您自己 IAM 用户的虚拟或硬件 MFA 设备（控制台）**

1. 使用 Amazon 账户 ID 或账户别名、您的 IAM 用户名和密码登录到 [IAM 控制台](https://console.amazonaws.cn/iam)。
**注意**  
为方便起见，Amazon登录页面使用浏览器 Cookie 记住您的 IAM 用户名和账户信息。如果您之前以其他用户身份登录，请选择页面底部的 **Sign-in to a different account**（登录到其他账户）以返回主登录页面。在此处，您可以输入要重新导向到您账户 IAM 用户登录页面的 Amazon 账户 ID 或账户别名。

   要获取 Amazon Web Services 账户 ID，请联系管理员。

1. 在右上角的导航栏中，选择您的用户名，然后选择 **Security credentials**（安全凭证）。  
![\[Amazon 管理控制台安全凭证链接\]](http://docs.amazonaws.cn/IAM/latest/UserGuide/images/security-credentials-user.shared.console.png)

1. 在 **Amazon IAM 凭证**选项卡的**多重身份验证（MFA）**部分中，选择 MFA 设备旁边的单选按钮，然后选择**重新同步**。

1. 依次将设备上按顺序生成的两个代码键入 **MFA code 1 (MFA 代码 1)** 和 **MFA code 2 (MFA 代码 2)** 中。然后选择 **Resync**（重新同步）。
**重要**  
生成代码之后立即提交您的请求。如果您生成代码，然后等待了很长时间才提交请求，则请求看起来有效，但实际上设备仍然不同步。这是因为基于时间的一次性密码（TOTP）很快会过期。

**重新同步其他 IAM 用户的虚拟或硬件 MFA 设备（控制台）**

1. 登录 Amazon Web Services 管理控制台，然后通过以下网址打开 IAM 控制台：[https://console.aws.amazon.com/iam/](https://console.amazonaws.cn/iam/)。

1. 在导航窗格中，选择 **Users**，然后选择其 MFA 设备需要重新同步的用户的名称。

1. 选择**安全凭证**选项卡。在**多重身份验证（MFA）**部分中，选择 MFA 设备旁边的单选按钮，然后选择**重新同步**。

1. 依次将设备上按顺序生成的两个代码键入 **MFA code 1 (MFA 代码 1)** 和 **MFA code 2 (MFA 代码 2)** 中。然后选择 **Resync**（重新同步）。
**重要**  
生成代码之后立即提交您的请求。如果您生成代码，然后等待了很长时间才提交请求，则请求看起来有效，但实际上设备仍然不同步。这是因为基于时间的一次性密码（TOTP）很快会过期。

**在登录前重新同步您的根用户 MFA（控制台）**

1. 在 **Amazon Web Services Sign In With Authentication Device**（亚马逊云科技使用身份验证设备登录）页面上，选择 **Having problems with your authentication device?（身份验证设备出现问题？） Click here**（点击此处）。
**注意**  
您可能会看到不同的文本，例如**使用 MFA 登录**和**排除您的身份验证设备故障**。不过，它们提供了相同的功能。

1. 在 **Re-Sync With Our Servers (与服务器重新同步)** 部分中，依次将设备上按顺序生成的两个代码键入 **MFA code 1 (MFA 代码 1)** 和 **MFA code 2 (MFA 代码 2)** 中。然后选择 **Re-sync authentication device**。

1. 如有必要，请再次键入您的密码，然后选择**登录**。然后使用您的 MFA 设备完成登录。

**在登录后重新同步您的根用户 MFA 设备（控制台）**

1. 选择 **Root user**（根用户）并输入您的 Amazon Web Services 账户 电子邮件地址，以账户拥有者身份登录 [IAM 控制台](https://console.amazonaws.cn/iam/)。在下一页上，输入您的密码。
**注意**  
作为根用户，您无法登录到**以 IAM 用户身份登录**页面。如果您看到**以 IAM 用户身份登录**页面，请选择该页面底部附近的**使用根用户电子邮件登录**。要获取以根用户身份登录方面的帮助，请参阅《Amazon 登录 用户指南》**中的[以根用户身份登录 Amazon Web Services 管理控制台](https://docs.amazonaws.cn/signin/latest/userguide/introduction-to-          root-user-sign-in-tutorial.html)。

1. 在导航栏的右侧选择您的账户名称，然后选择 **Security credentials**（安全凭证）。如有必要，选择 **Continue to Security Credentials**（继续使用安全凭证）。  
![\[导航菜单中的安全凭证\]](http://docs.amazonaws.cn/IAM/latest/UserGuide/images/security-credentials-root.shared.console.png)

1. 展开页面上的 **Multi-factor authentication (MFA) (多重身份验证)** 部分。

1. 选中设备旁边的单选按钮，然后选择 **Resync**（重新同步）。

1. 在 **Resync MFA device**（重新同步 MFA 设备）对话框中，依次将设备上按顺序生成的两个代码键入 **MFA code 1**（MFA 代码 1）和 **MFA code 2**（MFA 代码 2）中。然后选择 **Resync**（重新同步）。
**重要**  
生成代码之后立即提交您的请求。如果生成代码后等待很长时间才提交请求，MFA 设备会成功与用户关联，但 MFA 设备无法同步。这是因为基于时间的一次性密码（TOTP）很快会过期。

## 重新同步虚拟和硬件 MFA 设备 (Amazon CLI)


您可以从 Amazon CLI 重新同步虚拟和硬件 MFA 设备。

**重新同步 IAM 用户的虚拟或硬件 MFA 设备 (Amazon CLI)**  
在命令提示符处，发布 [aws iam resync-mfa-device](https://docs.amazonaws.cn/cli/latest/reference/iam/resync-mfa-device.html) 命令：
+ 虚拟 MFA 设备：将设备的 Amazon Resource Name (ARN) 指定为序列号。

  ```
  aws iam resync-mfa-device --user-name Richard --serial-number arn:aws:iam::123456789012:mfa/RichardsMFA --authentication-code1 123456 --authentication-code2 987654
  ```
+ 硬件 MFA 设备：将硬件设备的序列号指定为序列号。格式因供应商而异。例如，您可以从 Amazon 购买 gemalto 令牌。它的序列号通常是四个字母，后跟四个数字。

  ```
  aws iam resync-mfa-device --user-name Richard --serial-number ABCD12345678 --authentication-code1 123456 --authentication-code2 987654
  ```

**重要**  
生成代码之后立即提交您的请求。如果您生成代码，然后等待了很长时间才提交请求，则请求将失败，因为代码很快就会过期。

## 重新同步虚拟和硬件 MFA 设备 (Amazon API)


IAM 有一个执行同步的 API 调用。在这种情况下，建议您授予虚拟和硬件 MFA 设备用户访问此 API 调用的权限。然后，基于此 API 调用构建工具，这样您的用户即可随时根据需要重新同步其设备。

**重新同步 IAM 用户的虚拟或硬件 MFA 设备 (Amazon API)**
+ 发送 [ResyncMFADevice](https://docs.amazonaws.cn/IAM/latest/APIReference/API_ResyncMFADevice.html) 请求。