使用密钥或安全密钥的受支持配置
您可以通过使用当前支持的配置,将 FIDO2 设备绑定密钥(也称为安全密钥)配置为 IAM 的多重身份验证(MFA)方法。这包括 IAM 支持的 FIDO2 设备及支持 FIDO2 的浏览器。在注册 FIDO2 设备之前,请确认您使用的是最新版本的浏览器和操作系统(OS)。相关功能在不同的浏览器、身份验证器和操作系统客户端上可能有不同的行为。如果您的设备在一种浏览器上注册失败,则可以尝试使用其他浏览器注册。
FIDO2 是开放身份验证标准,作为 FIDO U2F 的扩展,基于公有密钥加密提供同样高级别的安全性。FIDO2 由 W3C Web 身份验证规范(WebAuthn API)和 FIDO 联盟客户端到身份验证器协议(CTAP,一种应用程序层协议)组成。CTAP 支持客户端或平台(如浏览器或操作系统)与外部身份验证器之间进行通信。当您在 AWS 中启用经 FIDO 认证的身份验证器时,安全密钥会创建仅适用于 AWS 的新密钥对。首先,输入您的凭证。出现提示时,点击安全密钥,这会响应 AWS 发出的身份验证质询。要了解有关 FIDO2 标准的更多信息,请参阅 FIDO2 项目
AWS 支持的 FIDO2 设备
IAM 支持 FIDO2 安全设备,这些设备可通过 USB、蓝牙或 NFC 连接到您的设备。IAM 还支持 TouchID 或 FaceID 等平台身份验证器。IAM 不支持 Windows Hello 的本地密钥注册。若要创建和使用密钥,Windows 用户应使用跨设备身份验证
注意
AWS 需要访问您的计算机上的物理 USB 端口以验证您的 FIDO2 设备。安全密钥不支持虚拟机、远程连接或浏览器的无痕模式。
FIDO 联盟维护一份与 FIDO 规范兼容的所有 FIDO2 产品
支持 FIDO2 的浏览器
FIDO2 安全设备能否在 Web 浏览器中运行,取决于具体的浏览器和操作系统组合。以下浏览器当前支持使用安全密钥:
Web 浏览器 | macOS 10.15+ | Windows 10 | Linux | iOS 14.5+ | Android 7+ |
---|---|---|---|---|---|
Chrome | 是 | 是 | 是 | 是 | 不支持 |
Safari | 是 | 否 | 否 | 是 | 不支持 |
边缘 | 是 | 是 | 否 | 是 | 不支持 |
Firefox | 是 | 是 | 否 | 是 | 不支持 |
注意
当前支持 FIDO2 的大多数 Firefox 版本默认情况下不会启用支持。有关在 Firefox 中启用 FIDO2 支持的说明,请参阅 排查 FIDO 安全密钥问题。
要详细了解支持 FIDO2 认证设备(如 YubiKey)的浏览器,请参阅 Operating system and web browser support for FIDO2 and U2F
浏览器插件
AWS 仅支持原生支持 FIDO2 的浏览器。AWS 不支持使用插件来添加 FIDO2 浏览器支持。某些浏览器插件与 FIDO2 标准不兼容,这可能会导致 FIDO2 安全密钥产生意外结果。
有关禁用浏览器插件和其他问题排查提示的信息,请参阅我无法启用我的 FIDO 安全密钥。
设备认证
我们仅在注册安全密钥期间捕获和分配与设备相关的认证,例如 FIPS 验证和 FIDO 认证级别。从 FIDO Alliance Metadata Service(MDS)
AWS 在设备注册期间提供以下认证类型作为条件密钥,从 FIDO MDS 获得:FIPS-140-2、FIPS-140-3 和 FIDO 认证级别。您可以根据首选认证类型和级别,在其 IAM policy 中指定特定身份验证器的注册。有关更多信息,请参阅下面的策略。
设备认证策略示例
以下用例显示允许您为 MFA 设备注册 FIPS 认证的示例策略。
主题
用例 1:只允许注册通过 FIPS-140-2 L2 认证的设备
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Create" } } }, { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Activate", "iam:FIDO-FIPS-140-2-certification": "L2" } } } ] }
用例 2:允许注册通过 FIPS-140-2 L2 和 FIDO L1 认证的设备
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Create" } } }, { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Activate", "iam:FIDO-FIPS-140-2-certification": "L2", "iam:FIDO-certification": "L1" } } } ] }
用例 3:允许注册通过 FIPS-140-2 L2 或 FIPS-140-3 L2 认证的设备
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Create" } } }, { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Activate", "iam:FIDO-FIPS-140-2-certification": "L2" } } }, { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Activate", "iam:FIDO-FIPS-140-3-certification": "L2" } } } ] }
使用案例 4:允许已通过 FIPS-140-2 L2 认证并支持其他 MFA 类型(例如虚拟身份验证器和硬件 TOTP)的设备注册
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey": "Create" } } }, { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey": "Activate", "iam:FIPS-140-2-certification": "L2" } } }, { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "Null": { "iam:RegisterSecurityKey": "true" } } } ] }
AWS CLI 和 AWS API
AWS 支持仅在 AWS Management Console 中使用密钥或安全密钥。在 AWS CLI 和 AWS API
其他 资源
-
有关在 AWS 中使用密钥和安全密钥的更多信息,请参阅 在 AWS Management Console 中分配密钥或安全密钥。
-
有关在 AWS 中对密钥和安全密钥进行故障排除的帮助信息,请参阅 排查 FIDO 安全密钥问题。
-
有关 FIDO2 支持的一般行业信息,请参阅 FIDO2 项目
。