我们在Azure AD B2C中有一个登录自定义策略设置,客户可以使用该设置来登录我们的应用程序。 在标准B2C策略中,将记住用户,并提供一个菜单,其中包含从特定计算机登录的电子邮件地址列表(以及用于忘记它们的选项),如以下屏幕截图所示:
我们的自定义登录策略有效,但是用户每次必须从计算机上重新输入其电子邮件地址。我们如何使用自定义策略实现相同的行为?
以下是技术资料:
<TechnicalProfile Id="SelfAsserted-LocalAccountSignin-Email">
<DisplayName>Local Account Signin</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="SignUpTarget">SignUpWithLogonEmailExchange</Item>
<Item Key="setting.operatingMode">Email</Item>
<Item Key="setting.showSignupLink">False</Item>
<Item Key="setting.showContinueButton">True</Item>
<Item Key="setting.showCancelButton">True</Item>
<Item Key="EnforceEmailVerification">False</Item>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
</Metadata>
<IncludeInSso>false</IncludeInSso>
<InputClaims>
<InputClaim ClaimTypeReferenceId="signInName" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="signInName" Required="true" />
<OutputClaim ClaimTypeReferenceId="password" Required="true" />
<OutputClaim ClaimTypeReferenceId="objectId" />
<OutputClaim ClaimTypeReferenceId="authenticationSource" />
</OutputClaims>
<ValidationTechnicalProfiles>
<ValidationTechnicalProfile ReferenceId="login-NonInteractive" />
</ValidationTechnicalProfiles>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-AAD" />
</TechnicalProfile>
编辑:
Azure AD B2C中当前处于“预览”阶段的新“用户流”已经试用,似乎提供了两种不同的登录用户历程:
因此,第2版登录似乎是自定义策略中用于登录用户旅程的版本,因为它是允许自定义UI的版本。
答案 0 :(得分:1)
内置策略已重命名为用户流。 Azure Ad B2C的新用户界面正在迁移到GA中。它具有一些v2用户流,当前正在预览中,并将在适当的时间移至GA。
SignInv1和SignInv2用户流程的工作方式有所不同。登录v1与Windows Active Directory(AAD)的默认登录体验“交互地”联合在一起,该体验具有“保持登录状态”(KMSI)功能。 SignInV2具有UX自定义性的其他功能。为了提供B2C与AAD“非交互式”联盟。
由于这种可定制性,目前signinv1和v2之间存在功能差距 -KMSI -强制重置密码。
有计划使用这些功能。
此页面将告诉您如何为自定义策略启用KMSI。 https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-reference-kmsi-custom