Jon*_*ved 5 azure azure-ad-b2c
使用 LinkedIn 作为具有 Identity Experience Framework 的社交提供商登录时,声明sub有时会在声明值中返回以下错误消息:
"Not supported currently. Use oid claim."
Run Code Online (Sandbox Code Playgroud)
该错误似乎是随机出现的,而不是在每个请求上出现。在https://jwt.ms中检查时,我们的测试帐户获得了正确的索赔子
在 Application Insights 中检查 UserJourneyRecorder 的日志文件时,发现了错误消息并追溯到我们的应用程序。
在策略文件中,错误似乎源自声明转换器CreateSubjectClaimFromAlternativeSecurityId
<ClaimsTransformation Id="CreateSubjectClaimFromAlternativeSecurityId" TransformationMethod="CreateStringClaim">
<InputParameters>
<InputParameter Id="value" DataType="string" Value="Not supported currently. Use oid claim." />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="sub" TransformationClaimType="createdClaim" />
</OutputClaims>
</ClaimsTransformation>
Run Code Online (Sandbox Code Playgroud)
我认为 Azure AD B2C 应该在此处抛出异常,而不是在单个声明中给出错误消息?
如果您已阅读“ Azure Active Directory B2C:使用自定义策略将 LinkedIn 添加为身份提供商”一文,则可以<OutputClaimsTransformation />从“LinkedIn-OAUTH”技术配置文件中删除:
<OutputClaimsTransformations>
<OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
<OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
<OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
<!-- REMOVE THE FOLLOWING LINE -->
<OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId" />
</OutputClaimsTransformations>
Run Code Online (Sandbox Code Playgroud)
如果您使用的是自定义策略入门包之一,则应将“子”声明设置为依赖方策略文件中用户对象的对象标识符:
<RelyingParty>
<DefaultUserJourney ReferenceId="SignUpOrSignIn" />
<TechnicalProfile Id="PolicyProfile">
<DisplayName>PolicyProfile</DisplayName>
<Protocol Name="OpenIdConnect" />
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="displayName" />
<OutputClaim ClaimTypeReferenceId="givenName" />
<OutputClaim ClaimTypeReferenceId="surname" />
<OutputClaim ClaimTypeReferenceId="email" />
<OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="sub"/>
<OutputClaim ClaimTypeReferenceId="identityProvider" />
</OutputClaims>
<SubjectNamingInfo ClaimType="sub" />
</TechnicalProfile>
</RelyingParty>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1705 次 |
| 最近记录: |