你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

管理订阅上的多重身份验证 (MFA)

如果使用密码只是为了对用户进行身份验证,则意味着打开了一条攻击途径。 用户经常使用弱密码或对多个服务重用密码。 启用 MFA 后,帐户将更安全,并且用户仍然可以通过单一登录 (SSO) 向几乎所有应用程序验证身份。

可以通过多种方式基于组织拥有的许可证为 Microsoft Entra 用户启用 MFA。 此页介绍了在 Microsoft Defender for Cloud 上下文中的每种方法的详细信息。

MFA 和 Microsoft Defender for Cloud

Defender for Cloud 在 MFA 中很重要。 为安全功能评分作出最大贡献的安全控制措施是“启用 MFA”。

“启用 MFA”控制措施中的以下建议可确保你为你的订阅用户实现建议的做法:

  • 对 Azure 资源拥有所有者权限的帐户应启用 MFA
  • 对 Azure 资源拥有写入权限的帐户应启用 MFA
  • 对 Azure 资源拥有读取权限的帐户应启用 MFA

可以通过三种方法来启用 MFA,并符合 Defender for Cloud 的两个建议:安全默认值、每用户分配和条件访问 (CA) 策略。

免费选项 - 安全默认值

如果你使用的是免费版本的 Microsoft Entra ID,则应使用安全默认值在租户上启用多重身份验证。

适用于 Microsoft 365 商业版、E3 或 E5 客户的 MFA

拥有 Microsoft 365 的客户可以使用每用户分配。 在这种情况下,请针对所有用户的所有登录事件启用或禁用 Microsoft Entra 多重身份验证。 不能仅为一部分用户或在特定情况下启用多重身份验证,管理通过 Office 365 门户进行。

Microsoft Entra ID P1 或 P2 客户的 MFA

为了获得更好的用户体验,请升级到 Microsoft Entra ID P1 或 P2 以使用条件访问 (CA) 策略选项。 若要配置 CA 策略,需要 Microsoft Entra 租户权限

CA 策略必须:

  • 强制执行 MFA

  • 包含 Microsoft Azure 管理应用 ID (797f4846-ba00-4fd7-ba43-dac1f8f63013) 或所有应用

  • 不排除 Microsoft Azure 管理应用 ID

在特定的情况下或者发生适合业务要求的事件时,Microsoft Entra ID P1 客户可以使用 Microsoft Entra CA 提示用户执行多重身份验证。 包含此功能的其他许可证:企业移动性 + 安全性 E3、Microsoft 365 F1 和 Microsoft 365 E3。

Microsoft Entra ID P2 提供极强大的安全功能和经过改善的用户体验。 此许可证向 Microsoft Entra ID P1 功能添加基于风险的条件访问。 基于风险的 CA 适应用户的模式,并最大程度减少多重身份验证提示。 包含此功能的其他许可证:企业移动性 + 安全性 E5 或 Microsoft 365 E5。

Azure 条件访问文档中了解详细信息。

标识未启用多重身份验证 (MFA) 的帐户

可以从 Defender for Cloud 的“建议详细信息”页面或使用 Azure Resource Graph 查看未启用 MFA 的用户帐户列表。

查看 Azure 门户中未启用 MFA 的帐户

在“建议详细信息”页中,从“运行不正常的资源”列表中选择订阅,或选择“执行操作”,这时将显示该列表 。

使用 Azure Resource Graph 查看未启用 MFA 的帐户

若要查看未启用 MFA 的帐户,请使用以下 Azure Resource Graph 查询。 该查询返回建议“应对 Azure 资源上拥有所有者权限的帐户启用 MFA”的所有运行不正常的资源 - 帐户。

  1. 打开“Azure Resource Graph 资源管理器”。

    Screenshot showing launching the Azure Resource Graph Explorer** recommendation page.

  2. 输入以下查询并选择“运行查询”。

    securityresources
    | where type =~ "microsoft.security/assessments/subassessments"
    | where id has "assessments/dabc9bc4-b8a8-45bd-9a5a-43000df8aa1c" or id has "assessments/c0cb17b2-0607-48a7-b0e0-903ed22de39b" or id has "assessments/6240402e-f77c-46fa-9060-a7ce53997754"
    | parse id with start "/assessments/" assessmentId "/subassessments/" userObjectId
    | summarize make_list(userObjectId) by strcat(tostring(properties.displayName), " (", assessmentId, ")")
    | project ["Recommendation Name"] = Column1 , ["Account ObjectIDs"] = list_userObjectId
    
  3. additionalData 属性显示未强制启用 MFA 的帐户的帐户对象 ID 列表。

    注意

    “Account ObjectIDs”列包含未根据建议强制启用 MFA 的帐户的帐户对象 ID 列表。

    提示

    也可使用 Defender for Cloud 的 REST API 方法:评估 - 获取

限制

  • 尚不支持对外部用户/租户强制实施 MFA 的条件访问功能。
  • 尚不支持应用于 Microsoft Entra 角色(例如所有全局管理员、外部用户、外部域等)的条件访问策略。
  • 标识 MFA 建议中不支持外部 MFA 解决方案,例如 Okta、Ping、Duo 等。

后续步骤

若要了解有关适用于其他 Azure 资源类型的建议的详细信息,请参阅以下文章: