B2C作为SalesForce的IdP

问题描述 投票:1回答:1

完全是B2C新手。尝试了这两个演练,但我仍然遗漏了一些东西:

https://github.com/Azure-Samples/active-directory-b2c-advanced-policies/blob/master/Walkthroughs/RP-SAML.md

http://blogs.quovantis.com/saml-based-sso-with-azure-ad-b2c-as-an-idp/

这两个都只描述了所需的策略,但我很确定我还需要在B2C上注册一个应用程序吗?我在app注册时遇到的问题是SalesForce为我提供了一个带有查询字符串的令牌端点URL:

https://mycompany.cs79.my.salesforce.com/services/oauth2/token?so=00D1h000000Cnli

并且B2C不允许在回复URL中使用查询字符串。

有没有办法解决?我认为Salesforce还支持OpenID,如果那会更好?

::::::::::::更新6/22 ::::::::::

SAML:

我发现并意识到我错过了SalesForce方面的关键步骤:adding the authentication provider to my domain's login page。单击新链接会将我重定向到B2C,但是我从B2C立即收到错误消息。 Application Insights显示以下异常:

SAML技术配置文件'serviceProviderMetadata'指定PartnerEntity URL为'REMOVED',但是获取元数据失败的原因是'出于安全原因,此XML文档中禁止使用DTD。要启用DTD处理,请将XmlReaderSettings上的DtdProcessing属性设置为Parse,并将设置传递给XmlReader.Create方法。

OpenID登录:

使用this写作作为指导,我在B2C中注册了应用程序并配置了SalesForce方面。

我没有使用Azure AD授权端点,而是从我的元数据URL(login.microsoftonline.com/{tenant}/.well-known/openid-configuration)中提取了我的B2C租户端点。

这适用于我的B2C管理员帐户,但是,当我尝试尝试不是B2C管理员的测试用户时,我从B2C登录页面收到以下错误:

抱歉,我们无法为您登录.AADSTS50020:来自身份提供商'LINK REMOVED'的用户帐户'已删除'在租户'MTB2CTest'中不存在,无法访问应用程序'5c8b9f4f-cf28-42fe-b629-b87251532970'在那个房客里。该帐户需要首先作为外部用户添加到租户中。注销并使用其他Azure Active Directory用户帐户重新登录。

::::::::::::更新6/23 ::::::::::

OpenID登录:

我发现如果我不使用策略,它仅对我的B2C管理员帐户100%有效,但对其他帐户不起作用。当我使用策略时,只有通过策略注册的帐户才能使用B2C进行身份验证(这很棒) - 但令牌似乎没有达到SalesForce。我创建了两个PDF,显示配置详细信息和每个方法(策略和nopolicy)here的结果。

salesforce single-sign-on openid saml azure-ad-b2c
1个回答
0
投票

这两个都只描述了所需的策略,但我很确定我还需要在B2C上注册一个应用程序吗?

不完全是,您无需在B2C方面注册应用程序。您在策略中执行的所有配置都已足够。

您是否尝试过Salesforce SAML SSO文章https://help.salesforce.com/articleView?id=sso_saml.htm&type=5

检查上面的文章并尝试在Salesforce端进行配置,并获取SAML RP所需的详细信息

我希望通过遵循SAML RPConfigure SAML Settings for Single Sign-On文章,您可以将B2C配置为Salesforce的IDP。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.