我sending claims to B2C via a JWT跟随WingTig Games demo code。如何从用户隐藏自我声明的注册TechnicalProfile
的声明(如下所示的LocalAccountSignUpWithLogonNameWithIDs)?
我尝试从UserInputType
定义中删除ClaimType
节点,但后来在用户旅程播放器中出现以下错误:
在租户“mytenant.onmicrosoft.com”的策略“B2C_1A_signup_signin_extensions”中,ID为“LocalAccountSignUpWithLogonNameWithIDs”的技术配置文件中指定的输出声明类型“extension_my_claim”未指定UserInputType或DefaultValue,也未从ValidationTechnicalProfile检索
然后,我从InputClaims
的{{1}}和OutputClaims
删除了我的声明,并删除了错误,但这些值并未保留。
TechnicalProfile
答案 0 :(得分:4)
如果您想在目录中保留声明而不向用户显示声明,那么最好的选择是:
InputClaim
添加到LocalAccountSignUpWithLogonNameWithIDs
技术资料PersistedClaim
技术资料中添加AAD-UserWriteUsingLogonName
,将其写入目录您所做的就是一直发送声明以保持持久性,但声明您不希望来自OutputClaim
的{{1}}。
当您将声明添加为SelfAssertedAttributeProvider
时,您声明OutputClaim
需要有办法获取该值。截至今天,它可以从三种可能的方式中选择:
SelfAssertedAttributeProvider
定义中需要UserInputType
)ClaimType
ValidationTechnicalProfile
的{{1}}提供您获得的错误很可能是因为DefaultValue
技术资料无法获得此声明的值。
答案 1 :(得分:1)
如上所述,
在自我声明的技术配置文件中,输出声明将其呈现给用户
如果先前已在前一步骤中填写过索赔,则您无需在步骤之间传递索赔,它们会一直保留在索赔包中,直到旅程结束或直到您使用转换删除它们为止。