设置 Azure AD B2C 的 OpenID Connect 提供者

Azure Active Directory (Azure AD) B2C 是一个 OpenID Connect 标识提供者,您可以使用它来对 Power Pages 站点的访问者进行身份验证。 您可以使用符合 Open ID Connect 规范的任何标识提供者。

本文介绍以下步骤:

备注

对您的站点的身份验证设置的更改可能需要几分钟反映在站点上。 要立即查看更改,在管理中心重启站点。

在 Power Pages 中设置 Azure AD B2C

将 Azure AD B2C 设置为您的站点的标识提供者。

  1. 在您的 Power Pages 站点中,选择设置>标识提供者

    如果没有显示标识提供者,确保在站点的常规身份验证设置中将外部登录设置为

  2. Azure Active Directory B2C 的右侧,选择更多命令 () >配置或选择提供者名称。

  3. 根据需要保留原有的提供者名称或者进行更改。

    提供者名称是用户在登录页面上选择标识提供者时看到的按钮上的文本。

  4. 选择下一步

  5. 回复 URL 下,选择复制

  6. 选择打开 Azure

    不要关闭您的 Power Pages 浏览器标签页。您很快就会返回。

创建应用注册

为 Azure AD B2C 创建租户,并注册一个应用程序,将您的站点的回复 URL 作为重定向 URI。

  1. 创建 Azure AD B2C 租户

  2. 搜索并选择 Azure AD B2C

  3. 管理下,选择应用注册

  4. 选择新建注册

  5. 输入名称。

  6. 选择最能反映您的组织要求的支持的帐户类型之一。

  7. 重定向 URI 下,选择 Web 作为平台,然后输入您的站点的回复 URL。

    • 如果您使用的是站点的默认 URL,粘贴您复制的回复 URL。
    • 如果您使用的是自定义域名,请输入自定义 URL。 确保在站点上标识提供者的设置中使用相同的自定义 URL 作为重定向 URL。
  8. 选择注册

  9. 复制应用程序(客户端)ID

  10. 在左侧面板的管理下,选择身份验证

  11. 隐式授权下,选中访问令牌(用于隐式流)

  12. 选择保存

  13. 使用包含 tfp颁发者(iss)声明 URL 配置令牌兼容性了解有关令牌兼容性的详细信息

创建用户流

  1. 创建注册和登录用户流

  2. (可选)创建一个密码重置用户流

从用户流获取颁发者 URL

  1. 打开您创建的注册和登录用户流。

  2. Azure 门户中转到 Azure AD B2C 租户。

  3. 选择运行用户流

  4. 在新浏览器标签页中打开 OpenID Connect 配置 URL。

    该 URL 指的是 OpenID Connect 标识提供者配置文档,也称为 OpenID 已知配置终结点

  5. 在地址栏中复制颁发者 URL。 不要包含引号。 确保颁发者(iss)声明 URL 包含 tfp

  6. 打开密码重置用户流(如果您已创建),然后重复步骤 2-5。

在 Power Pages 中输入站点设置和密码重置设置

  1. 返回到您之前离开的 Power Pages 配置标识提供者页面。

  2. 配置站点设置下,输入以下值:

    • 机构:粘贴您复制的颁发者 URL。

    • 客户端 ID:粘贴您创建的 Azure AD B2C 应用程序的应用程序(客户端)ID

    • 重定向 URI:如果您的站点使用自定义域名,输入自定义 URL;否则,保留默认值,该值应为您的站点的回复 URL。

  3. 密码重置设置下,输入以下值:

    • 默认策略 ID:输入您创建的注册和登录用户流的名称。 该名称的前缀为 B2C_1

    • 密码重置策略 ID:如果您创建了密码重置用户流,输入流的名称。 该名称的前缀为 B2C_1

    • 有效颁发者:输入您创建的注册、登录以及密码重置用户流的颁发者 URL 的逗号分隔列表。

  4. (可选)展开其他设置,根据需要更改设置。

  5. 选择确认

Power Pages 中的其他设置

通过其他设置,您可以更好地控制用户如何使用 Azure AD B2C 标识提供者进行身份验证。 您不需要设置这些值中的任何一个。 它们完全可选。

  • 注册声明映射登录声明映射:在用户身份验证中,声明是描述用户身份的信息,如电子邮件地址或出生日期。 当您登录到应用程序或网站时,它将创建一个令牌。 令牌包含有关您的身份的信息,包括与之相关的任何声明。 令牌在您访问应用程序或站点的其他部分或连接到同一标识提供者的其他应用程序和站点时,用于验证您的身份。 声明映射是更改令牌中包含的信息的一种方法。 它可以用于自定义应用程序或站点可用的信息,以及控制对功能或数据的访问。 注册声明映射修改注册应用程序或站点时发出的声明。 登录声明映射修改您登录应用程序或站点时发出的声明。 了解有关声明映射策略的更多信息

    • 如果您使用电子邮件名字姓氏属性,则无需为这些设置输入值。 对于其他属性,输入逻辑名称/值对的列表。 以 field_logical_name=jwt_attribute_name 格式输入,其中 field_logical_name 是门户中字段的逻辑名称,Power Pages 和 jwt_attribute_name 是具有从标识提供者返回的值的属性。 这些对用于将声明值(在注册或登录期间创建,从 Azure AD B2C 返回)映射到联系人记录中的属性。

      例如,在用户流中,使用职务 (jobTitle)邮政编码 (postalCode) 作为用户属性。 您想要更新相应的 Contact 表字段职务 (jobtitle)地址 1: ZIP/邮政编码 (address1_postalcode)。 在这种情况下,输入 jobtitle=jobTitle,address1_postalcode=postalCode 作为声明映射。

  • 外部注销:此设置控制您的站点是否使用联合注销。使用联合注销,当用户注销某个应用程序或站点时,他们同时会注销使用同一标识提供者的所有应用程序和站点。 例如,如果您使用 Microsoft 帐户登录某个站点,然后注销 Microsoft 帐户,联合注销会确保您同时注销该站点。

    • :在用户从您的网站注销时将其重定向到联合注销体验。
    • :仅将用户从您的网站注销。
  • 包含电子邮件的联系人映射:此设置确定联系人登录时是否映射到相应的电子邮件地址。

    • :将唯一的联系人记录与匹配的电子邮件地址关联,并在用户成功登录后自动将外部标识提供者分配到联系人。
    • :联系人记录与标识提供者不匹配。 这是此设置的默认选项。
  • 已启用注册:此设置控制用户是否可以在此站点上注册。

    • :显示用户可在您的站点上创建帐户的注册页面。
    • :禁用并隐藏外部帐户注册页面。

另请参见

设置站点身份验证
将身份提供程序迁移到 Azure AD B2C