Azure Active Directory - 自定义策略错误

时间:2017-08-07 18:57:53

标签: azure saml-2.0 azure-ad-b2c

我已按照此处提供的指南在Azure AD B2C中设置自定义策略:

https://docs.microsoft.com/azure/active-directory-b2c/active-directory-b2c-setup-sf-app-custom

我实际上将IdP设置为SSOCircle而不是SalesForce,这似乎有效,直到重定向到服务提供商断言消费者URL

  

https://login.microsoftonline.com/te/TENANT.onmicrosoft.com/B2C_1A_TrustFrameworkBase/samlp/sso/assertionconsumer

我已添加了应用程序洞察以进行故障排除,并且异常详细信息为:

  

ClaimType的声明,ID为#34; socialIdpUserId"找不到,这是Type" Claims.Cpim.Data.Transformations.CreateAlternativeSecurityIdTransformation"的ClaimsTransformationImpl所要求的。 for TransformationMethod" CreateAlternativeSecurityId"索引转换为id" CreateAlternativeSecurityId"在政策" B2C_1A_TrustFrameworkBase"租户" TENANT.onmicrosoft.com"。

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:0)

根据错误,您的<ClaimsProvider>缺少socialIdpUserId声明。这是因为缺少<OutputClaim>的{​​{1}}条目或者它被映射到SSOCircle不提供的PartnerClaimType。

来自您引用的该文档中的"Create the Salesforce SAML claims provider in your base policy" section

ClaimTypeReferenceId="socialIdPUserId"

答案 1 :(得分:0)

如果您需要用户ID作为SSOCircle的声明,请检查&#34; UserID&#34;在SSOCircle Admin UI中导入SAML服务提供者数据期间。然后,SSOCircle IDP将用户名添加为&#34; UserID&#34;属性为SAML断言。

参考Saca提到的政策,改变一下:

<OutputClaim ClaimTypeReferenceId="socialIdpUserId" PartnerClaimType="userId"/> 

<OutputClaim ClaimTypeReferenceId="socialIdpUserId" PartnerClaimType="UserID"/>

对其他属性(如givenname,surname和email

)执行类似操作
相关问题