Azure Active Directory B2C 部署计划

Azure Active Directory B2C (Azure AD B2C) 是一种标识和访问管理解决方案,可以简化与基础结构的集成。 使用以下指南来帮助了解整个 Azure AD B2C 部署的要求和合规性。

规划 Azure AD B2C 部署

要求

迁移后,应用程序就可以支持新式标识协议,例如 Open Authorization (OAuth) 2.0 和 OpenID Connect (OIDC)。

利益干系人

技术项目的成功取决于管理期望、结果和责任。

  • 确定应用程序架构师、技术项目经理和所有者
  • 创建通讯组列表 (DL),以便与 Microsoft 帐户或工程团队通信
    • 提出问题、获取答案和接收通知
  • 确定组织外部的合作伙伴或资源以支持你

了解更多:包括合适的利益干系人

沟通

主动并定期与用户就挂起的和当前更改进行沟通。 告知他们体验的更改方式、更改时间,并提供支持联系人。

时间线

帮助设定现实的期望,并制定应变计划以满足关键里程碑:

  • 试点日期
  • 发布日期
  • 影响交付的日期
  • 依赖项

实施 Azure AD B2C 部署

  • 部署应用程序和用户标识 - 部署客户端应用程序并迁移用户标识
  • 客户端应用程序载入和可交付结果 - 载入客户端应用程序并测试解决方案
  • 安全性 - 增强标识解决方案的安全性
  • 合规性 - 满足法规要求
  • 用户体验 - 启用用户友好的服务

部署身份验证和授权

通过 Microsoft Identity PDF 了解更多信息,通过 Azure AD B2C 获得专业知识,这是一门面向开发人员的课程。

角色、权限、委派和调用的清单

  • 确定访问应用程序的角色
  • 定义当前和将来如何管理系统权限和权利
  • 确认你有权限存储,以及是否有权限添加到目录
  • 定义管理委托管理的方式
    • 例如,客户的客户管理
  • 验证应用程序是否调用 API 管理器 (APIM)
    • 在向应用程序颁发令牌之前,可能需要从 IDP 调用

部署应用程序和用户标识

Azure AD B2C 项目从一个或多个客户端应用程序开始。

应用程序部署清单

  • CIAM 部署中包含的应用程序
  • 正在使用的应用程序
    • 例如,Web 应用程序、API、单页 Web 应用 (SPA) 或本机移动应用程序
  • 正在使用的身份验证:
    • 例如,使用安全断言标记语言 (SAML) 进行联合身份验证或使用 OIDC 进行联合身份验证的表单
    • 如果是 OIDC,请确认响应类型:code 或 id_token
  • 确定前端和后端应用程序的托管位置:本地、云或混合云
  • 确认正在使用的平台或语言:
    • 例如,ASP.NET、Java 和 Node.js
  • 验证用户属性的存储位置
    • 例如,轻型目录访问协议 (LDAP) 或数据库

用户标识部署清单

客户端应用程序载入和可交付结果

使用以下清单载入应用程序

区域 说明
应用程序目标用户组 在最终客户、业务客户或数字服务之间进行选择。
确定员工是否需要登录。
应用程序业务价值 了解业务需求或目标,以确定最佳 Azure AD B2C 解决方案以及与其他客户端应用程序的集成。
标识组 根据要求将身份分组,如企业对消费者 (B2C)、企业对企业(B2B)、企业对员工 (B2E) 和企业对机器 (B2M),用于 Iot 设备登录和服务帐户。
标识提供者 (IDP) 请参阅添加标识提供程序。 例如,对于客户到客户 (C2C) 移动应用使用简单的登录过程。
具有数字服务的 B2C 具有合规性要求。
考虑电子邮件登录。
法规约束 确定对远程配置文件或隐私策略的需求。
登录和注册流 在注册期间确认电子邮件验证或电子邮件验证。
有关检查进程,请参阅工作原理:Microsoft Entra 多重身份验证
应用程序和身份验证协议 实现客户端应用程序,例如 Web 应用程序、单页应用程序 (SPA) 或本机。
客户端应用程序和 Azure AD B2C 的身份验证协议:OAuth、OIDC 和 SAML。
用户迁移 确认是否将用户迁移到 Azure AD B2C:实时 (JIT) 迁移和批量导入/导出。

使用以下清单进行交付。

区域 说明
协议信息 收集两个变体的基本路径、策略和元数据 URL。
指定示例登录、客户端应用程序 ID、机密和重定向等属性。
应用程序示例 请参阅 Azure Active Directory B2C 代码示例
渗透测试 将渗透测试告知运营团队,然后测试用户流,包括 OAuth 实现。
请参阅渗透测试渗透测试参与规则
单元测试 单元测试和生成令牌。
请参阅 Microsoft 标识平台和 OAuth 2.0 资源所有者密码凭据
重复使用令牌,以减少对对基础结构的调查。
在 Azure Active Directory B2C 中设置资源所有者密码凭据流。 不得使用 ROPC 流对应用中的用户进行身份验证。
负载测试 了解 Azure AD B2C 服务限制和局限性
计算每月预期的身份验证和用户登录数。
评估高负载流量持续时间和业务原因:假日、迁移和事件。
确定注册、流量和地理分布的预期峰值速率,例如每秒。

安全性

使用以下清单增强应用程序安全性。

  • 身份验证方法,例如多重身份验证:
    • 对于触发高价值事务或其他风险事件的用户,建议使用多重身份验证。 例如,银行、财务和签出流程。
  • 确认使用反机器人机制
  • 在登录或注册过程中确认所需的条件状态

合规性

为了帮助遵守法规要求并增强后端系统安全性,可以使用虚拟网络 (VNet)、IP 限制和 Web 应用程序防火墙等。 请考虑以下要求:

  • 监管合规性要求
    • 例如,支付卡行业数据安全标准 (PCI DSS)
    • 若要详细了解 PCI 安全标准委员会,请转到 pcisecuritystandards.org
  • 数据存储到单独的数据库存储中
    • 确定是否无法将此信息写入目录

用户体验

使用以下清单来帮助定义用户体验要求。

  • 使用屏幕截图和用户情景展示应用程序最终用户体验
    • 例如,登录、注册、注册/登录 (SUSI)、配置文件编辑和密码重置的屏幕截图
  • 在 CIAM 解决方案中使用查询字符串参数查找传递的提示
  • 对于高度的用户体验自定义,请考虑使用前端开发人员
  • 在 Azure AD B2C 中,可以自定义 HTML 和 CSS
    • 请参阅 JavaScript 的使用准则
    • 对于单页应用程序,使用另一个加载到 <iframe> 元素中的“登录”HTML 页

监视审核和日志记录

使用以下清单进行监视、审核和日志记录。

资源

后续步骤

适用于 Azure Active Directory B2C 的建议和最佳做法