使用 Azure Active Directory B2C 设置直接登录

开始之前,请使用此页顶部的“选择策略类型”选择器来选择要设置的策略类型。 Azure Active Directory B2C 提供了两种定义用户如何与应用程序交互的方法:通过预定义的用户流,或者通过可完全配置的自定义策略。 对于每种方法,本文中所需的步骤都不同。

使用 Azure Active Directory B2C (Azure AD B2C) 为应用程序设置登录时,可以预填充登录名或直接登录到特定的社交标识提供者。

预填充登录名

在登录用户旅程中,信赖方应用程序可以针对特定用户或域名。 当针对用户时,应用程序可以在授权请求中使用用户登录名指定 login_hint 查询参数。 Azure AD B2C 自动填充登录名,而用户只需提供密码。

Sign up sign in page with login_hint query param highlighted in URL

用户可以更改登录文本框中的值。

若要支持登录提示参数,请替代 SelfAsserted-LocalAccountSignin-Email 技术配置文件。 在 <InputClaims> 节中,将 signInName 声明的 DefaultValue 设置为 {OIDC:LoginHint}{OIDC:LoginHint} 变量包含 login_hint 参数的值。 Azure AD B2C 将读取 signInName 声明的值并预填充 signInName 文本框。

<ClaimsProvider>
  <DisplayName>Local Account</DisplayName>
  <TechnicalProfiles>
    <TechnicalProfile Id="SelfAsserted-LocalAccountSignin-Email">
      <InputClaims>
        <!-- Add the login hint value to the sign-in names claim type -->
        <InputClaim ClaimTypeReferenceId="signInName" DefaultValue="{OIDC:LoginHint}" />
      </InputClaims>
    </TechnicalProfile>
  </TechnicalProfiles>
</ClaimsProvider>

将登录重定向到社交提供者

如果已将应用程序的登录旅程配置为包括社交帐户,则可以指定 domain_hint 参数。 此查询参数向 Azure AD B2C 提供有关应该用于登录的社交标识提供者的提示。

Sign up sign in page with domain_hint query param highlighted in URL

域提示查询字符串参数可以设置为以下域之一:

若要支持域提示参数,可以使用任意 <ClaimsProvider><Domain>domain name</Domain> XML 元素配置域名。

<ClaimsProvider>
    <!-- Add the domain hint value to the claims provider -->
    <Domain>wechat.com</Domain>
    <DisplayName>Wechat</DisplayName>
    <TechnicalProfiles>
    ...