首页 > 解决方案 > Azure AD B2C:在本地帐户注册期间持续声明

问题描述

我创建了一个名为extension_compName. 通过本地帐户注册,此值由用户输入。在TechnicalProfile我想将此值保留到companyNameAzure AD 的字段中。我尝试使用以下PersistedClaims设置:

<PersistedClaim ClaimTypeReferenceId="extension_compName" PartnerClaimType="companyName" />

但是,这不起作用,并在本地帐户注册页面上出现以下错误: Unable to validate the information provided. 我该如何解决?

谢谢

标签: azure-ad-b2cazure-ad-b2c-custom-policy

解决方案


您需要将此持久声明行添加到 AAD-UserWriteUsingLogonEmail 技术配置文件。此技术配置文件被注册技术配置文件称为验证技术配置文件,以尝试在目录中创建帐户。

https://docs.microsoft.com/en-us/azure/active-directory-b2c/configure-user-input?pivots=b2c-custom-policy#include-a-claim-in-the-token

https://github.com/azure-ad-b2c/azureadb2ccommunity.io/wiki/LocalAccount-Sign-In-and-Sign-Up-policy

您还需要启用自定义策略以使用扩展属性。 https://docs.microsoft.com/en-us/azure/active-directory-b2c/user-flow-custom-attributes?pivots=b2c-custom-policy

CompanyName不可写入。请参阅此处提供的属性: https ://docs.microsoft.com/en-us/azure/active-directory-b2c/user-profile-attributes

您可以简单地使用扩展属性

<PersistedClaim ClaimTypeReferenceId="extension_compName" />

推荐阅读