Important
Azure AD 外部标识 P2 已在 Azure AD B2C 租户中停用。 P2 中的 ID 保护在员工租户中仍可用。 有关计费和替代方法的详细信息,请参阅 P2 停用常见问题解答。
本文提供了保护 Azure Active Directory B2C (Azure AD B2C) 解决方案的最佳做法。 若要使用 Azure AD B2C 生成标识解决方案,需要考虑保护和监视许多组件。
根据解决方案的不同,你在范围内有一个或多个以下组件:
- Azure AD B2C 身份验证终结点
-
Azure AD B2C 用户流或自定义策略
- 登录
- 注册
- 电子邮件一次性密码 (OTP)
- 多重身份验证控制
- 外部 REST 应用程序接口
必须保护并监视所有这些组件,以确保用户可以在不中断的情况下登录到应用程序。 按照本文中的指南保护解决方案免受机器人攻击、欺诈帐户创建、国际收入共享欺诈(ISRF)和密码喷射。
如何保护解决方案
标识解决方案使用多个组件来提供流畅的登录体验。 下表显示了建议用于每个组件的保护机制。
| Component | 终结点 | 为什么 | 如何保护 |
|---|---|---|---|
| Azure AD B2C 身份验证终结点 |
/authorize、/token、/.well-known/openid-configuration、/discovery/v2.0/keys |
防止资源耗尽 | Web 应用程序防火墙(WAF) 和 Azure Front Door (AFD) |
| Sign-in | NA | 恶意登录可能会尝试暴力破解帐户或使用泄露的凭据 | |
| 注册 | NA | 欺诈性注册可能会试图耗尽资源。 | 终端保护 |
| 电子邮件 OTP | NA | 欺诈性暴力破解或耗尽资源 | 终结点保护和 Authenticator 应用 |
| 多重身份验证控制 | NA | 未经请求的电话或短信或资源耗尽。 | 终结点保护和 Authenticator 应用 |
| 外部 REST 应用程序接口 | 您的 REST API 终结点 | 恶意使用用户流或自定义策略可能会导致 API 终结点资源耗尽。 | WAF 和 AFD |
保护机制
下表概述了可用于保护不同组件的不同保护机制。
| 内容 | 为什么 | 方式 |
|---|---|---|
| Web 应用程序防火墙 (WAF) | WAF 充当抵御对 Azure AD B2C 终结点发出的恶意请求的第一层防线。 它针对 DDoS、机器人、OWASP 前 10 名等常见攻击和漏洞提供集中保护。 建议使用 WAF 来确保即使在恶意请求到达 Azure AD B2C 终结点之前也会停止。
若要启用 WAF,必须先 使用 AFD 在 Azure AD B2C 中启用自定义域。 |
|
| Azure Front Door (AFD) | AFD 是一个全局可缩放的入口点,它使用Microsoft全局边缘网络来创建快速、安全且可广泛缩放的 Web 应用程序。 AFD 的主要功能包括:
|
|
| 多重身份验证 | MFA 为注册和登录过程增添了第二层安全性,是改善 Azure AD B2C 中用户身份验证的安全态势的重要组成部分。 Authenticator 应用 - TOTP 是 Azure AD B2C 中推荐的 MFA 方法。 | |
| 安全信息和事件管理(SIEM)/安全业务流程、自动化和响应(SOAR) | 你需要一个可靠的监视和警报系统来分析使用模式,例如登录和注册,并检测任何可能指示网络攻击的异常行为。 这是一个重要的步骤,增加了额外的安全性层。 它还可以帮助你了解只能随着时间推移所捕获和建立的模式和趋势。 警报有助于确定因素,例如整体登录次数的变化率、失败的登录率和注册流程失败,以及电话欺诈(例如 IRSF 攻击等)。 所有这些都可能是持续网络攻击的指标,需要立即注意。 Azure AD B2C 支持高级别和细粒度日志记录,以及生成报表和警报。 建议在所有生产租户中实现监视和警报。 |
保护 REST API 接口
Azure AD B2C 允许使用 REST API 技术配置文件连接到外部系统。 需要保护这些接口。 可以通过保护 Azure AD B2C 身份验证终结点来防止对 REST API 的恶意请求。 可以使用 WAF 和 AFD 保护这些终结点。
方案 1:如何保护登录体验
创建登录体验或用户流后,需要保护流的特定组件免受恶意活动的影响。 例如,如果登录流涉及以下内容,则表会显示需要保护的组件和相关保护技术:
- 本地帐户电子邮件和密码身份验证
- 使用短信或电话呼叫Microsoft Entra 多重身份验证
| Component | 终结点 | 如何保护 |
|---|---|---|
| Azure AD B2C 身份验证终结点 |
/authorize、/token、/.well-known/openid-configuration、/discovery/v2.0/keys |
WAP 和 AFD |
| 登录 | NA | |
| 多重身份验证控制 | NA | 验证器应用 |
| 外部 REST API | 你的 API 终结点。 | 验证器应用、WAF 和 AFD |
方案 2:如何保护注册体验
创建注册体验或用户流后,需要保护流的特定组件免受恶意活动的影响。 如果登录流涉及以下内容,则表会显示需要保护的组件以及关联的保护技术:
- 本地帐户电子邮件和密码注册
- 使用电子邮件 OTP 进行电子邮件验证
- 使用短信或电话呼叫Microsoft Entra 多重身份验证
| Component | 终结点 | 如何保护 |
|---|---|---|
| Azure AD B2C 身份验证终结点 |
/authorize、/token、/.well-known/openid-configuration、/discovery/v2.0/keys |
WAF 和 AFD |
| 注册 | NA | Dynamics 欺诈保护 |
| 电子邮件 OTP | NA | WAF 和 AFD |
| 多重身份验证控制 | NA | 验证器应用 |
在此方案中,使用 WAF 和 AFD 保护机制可保护 Azure AD B2C 身份验证终结点和电子邮件 OTP 组件。
后续步骤
- 保护基于电话的多重身份验证 以保护基于手机的多重身份验证。
- 配置监视和警报 ,以向任何威胁发出警报。