上一节讲到Azure AD的一些基础概念,以及如何运用 Azure AD 包含API资源,Azure AD 是微软提供的云端的身份标识和资源访问服务,帮助员工/用户/管理员访问一些外部资源和内部资源:
• 外部资源,例如 Microsoft Office 365、Azure 门户以及成千上万的其他 SaaS 应用程序。 • 内部资源,例如公司网络和 Intranet 上的应用,以及由自己的组织开发的任何云应用。
今天,引入一个新概念:Azure Active Directory B2C。下面就开始进入正文了👇👇👇👇👇
Azure Active Directory B2C 也称为 Azure AD B2C,它是以服务的形式提供企业到客户的标识管理服务,用于以自定义的方式控制客户在使用 ios,android,.net,spa以及其他应用程序如何注册,登录和管理其个人资料。客户使用其首选的社交,企业或者本地账户标识对应用程序和API进行单一登录访问。
Azure AD B2C 是一种贴牌式身份验证解决方案。 你可以使用自己的品牌自定义整个用户体验,使其能够与 Web 和移动应用程序无缝融合。可以自定义当用户注册、登录和修改其个人资料信息时 Azure AD B2C 显示的每一页。 可以自定义用户旅程中的 HTML、CSS 和 JavaScript,使 Azure AD B2C 体验的外观类似于应用程序的原生组成部分。
Azure AD B2C 使用基于标准的身份验证协议,包括 OpenID Connect、OAuth 2.0 和 SAML。 它与大多数新式应用程序和商用现货软件相集成。例如,FaceBook,微博,谷歌账号,微信等等。Azure AD B2C 充当 Web 应用程序、移动应用和 API 的中心身份验证机构,使你能够为所有这些应用构建单一登录 (SSO) 解决方案。 集中收集用户个人资料和偏好信息,并捕获有关登录行为和注册转换的详细分析。
Azure AD B2C 还可以与外部用户存储集成,Azure AD B2C 提供一个目录,其中可以保存每个用户的 100 个自定义属性。 但是,你也可以与外部系统相集成。 例如,使用 Azure AD B2C 进行身份验证,但将权限委托给用作客户数据真实来源的外部客户关系管理 (CRM) 或客户忠诚度数据库。
另一种外部用户存储方案是让 Azure AD B2C 处理应用程序的身份验证,但与存储用户个人资料或个人数据的外部系统相集成。 例如,满足区域或本地数据存储策略规定的数据驻留要求。
在 Azure Active Directory B2C (Azure AD B2C) 中,租户表示组织,也是用户的目录。 每个 Azure AD B2C 租户都是独特的,独立于其他 Azure AD B2C 租户。 Azure AD B2C 租户不同于你可能已有的 Azure Active Directory 租户,Azure AD B2C 租户是开始使用 Azure AD B2C 之前必须先创建的第一个资源。
用户可以通过使用者帐户登录到通过 Azure AD B2C 保护的应用程序。 但是,具有使用者帐户的用户无法访问 Azure 资源(例如 Azure 门户)。可将使用者帐户关联到以下标识类型:
具有使用者帐户的用户可以通过多个标识(例如用户名、电子邮件、员工 ID、政府 ID 等)登录。 单个账户可以有多个本地和社交标识。
可以配置 Azure AD B2C,以允许用户使用外部社交或企业标识提供者 (IdP) 提供的凭据登录到你的应用程序。 Azure AD B2C 支持外部标识提供者和任何支持 OAuth 1.0、OAuth 2.0、OpenID Connect、SAML 或 WS-Federation 协议的标识提供者。使用外部标识提供者联合,可让使用者通过其现有的社交帐户或企业帐户登录,而不必仅仅出于访问你的应用程序的目的创建一个新帐户。
在注册或登录页上,Azure AD B2C 会提供外部标识提供者的列表,供用户选择用来登录。 用户选择一个外部标识提供者后,将会转到(重定向到)所选提供者的网站,以完成登录过程。 用户成功登录后,将返回到 Azure AD B2C,以便对应用程序中的帐户进行身份验证。
Azure AD B2C 的核心优势在于它的可扩展策略框架。 策略描述用户的标识体验,例如注册、登录和配置文件编辑。
在 Azure AD B2C 中,可以通过两个主要途径来提供这些标识体验:用户流和自定义策略。
用户流和自定义策略均由 Identity Experience Framework(Azure AD B2C 的策略业务流程引擎)提供支持。
2.5 协议,令牌
Azure AD B2C 支持 OpenID Connect 和 OAuth 2.0 协议。 在 OpenID Connect 的 Azure AD B2C 实现中,应用程序通过向 Azure AD B2C 发出身份验证请求,来启动此认证。向 Azure AD B2C 发出请求后会获得一个安全令牌,例如 ID 令牌或访问令牌。 此安全令牌定义用户的标识。 令牌是从 Azure AD B2C 终结点(例如 /token
或 /authorize
终结点)接收的。 通过这些令牌,可以访问用于验证标识以及允许访问安全资源的声明。
上图显示了 Azure AD B2C 如何使用同一身份验证流中的各种协议进行通信:
2.6,应用程序集成Azure AD B2C
当用户想要登录到你的应用程序时(无论是 Web、移动、桌面还是单页应用程序 (SPA)),该应用程序都会向用户流或自定义策略提供的终结点发起授权请求。 用户流或自定义策略定义并控制用户的体验。 当用户完成用户流(例如注册或登录流)后,Azure AD B2C 会生成一个令牌,然后将用户重定向回到应用程序。
多个应用程序可以使用同一个用户流或自定义策略。 单个应用程序可以使用多个用户流或自定义策略。例如,若要登录到某个应用程序,该应用程序将使用注册或登录用户流。 用户登录后,他们可能想要编辑其配置文件,在这种情况下,应用程序将发起另一个授权请求(这一次使用的是配置文件编辑用户流)。
2.7 支持自定义UI
对于用户注册、登录和修改用户资料等常见的功能,AAD B2C 提供了用户流的功能,直白的讲,就是提供了这些模块的UI,并且可以自定义样式。
今天大概介绍了一下AD B2C的一些概述和功能,我们可以配置 Azure AD B2C,以允许用户使用外部社交或企业标识提供者 (IDP) 提供的凭据登录到你的应用程序。下一篇,正式开讲创建并且体验AAD B2C注册和登陆用户流。
作者:Allen
版权:转载请在文章明显位置注明作者及出处。如发现错误,欢迎批评指正。
参考微软文档出处:
中文文档: https://docs.azure.cn/zh-cn/active-directory-b2c/overview
英文文档: https://docs.azure.cn/en-us/active-directory-b2c/overview
本文分享自 NetCore 从壹开始 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!