【问题标题】:Unable to implement SSO in Salesforce无法在 Salesforce 中实施 SSO
【发布时间】:2020-04-14 18:37:46
【问题描述】:

我正在为 Salesforce 实施服务提供商发起的 SSO,其中服务提供商将是 Salesforce,身份提供商将是 lambda 代码。在验证用户的手机号码后,lambda 代码将允许用户使用。验证手机号码后,lambda 将发送 SAMLResponse。

我在 Salesforce 上配置了 SSO,如下所示:-

我还能够生成有效的 SAML 响应并在 Salesforce SAML 验证器上对其进行了验证,如下所示:-

我创建了一个login page,将从 Salesforce 重定向。

我还创建了一个 API,每次都为给定的联合 ID 获取唯一的 SAML 响应,如下所示:- https://qodz4saz9a.execute-api.us-west-2.amazonaws.com/v1/generate-saml-response?FederationID=rahul@xyz.com

Salesforce 登录页面的 URL 是-https://im--partial.my.salesforce.com/

完成所有这些设置后,我可以通过选择“使用其他帐户登录”选项然后选择“Twilio”重定向到我从 Salesforce 创建的登录页面,如下所示:-

Salesforce 正在重定向到登录页面,并在 URL 中使用 SAMLRequest 参数,如下所示:-

http://salesforce-sso-page.s3-website-us-west-2.amazonaws.com/?SAMLRequest=fZJRc6IwFIX%2FC.....

我不确定如何从这里开始并允许从我的登录页面登录 Salesforce。一旦用户输入手机号码和 OTP,我会将用户重定向到以下 URL -

https://im--partial.my.salesforce.com?SAMLResponse=PD94bWwgdmVyc2lvbj0i.....

这里我使用 SAMLResponse 作为查询参数来传递 base 64 编码的 SAML 响应以登录到 Salesforce。但我不确定这是否是验证和登录 Salesforce 的正确方法。

进入 OTP(测试 OTP 为 1234)后出现以下错误。

我暂时没有使用 Salesforce 生成的 SAMLRequest 来生成 SAMLResponse

我浏览了许多文档,但找不到将 SAMLResponse 传递给 Salesforce 以进行登录的方法。请让我知道是否有人对此有任何想法或我是否遵循了错误的步骤。

【问题讨论】:

    标签: authentication salesforce single-sign-on saml-2.0


    【解决方案1】:

    SAML 响应以特定的“方式”发送给服务提供商,协议将此称为绑定。在这种情况下,预期的绑定是 HTTP POST。使用 HTTP POST 作为您的绑定,必须在通过 POST 方法发送给服务提供商的 HTTP 请求正文中提交 SAML 响应。单点登录设置屏幕中列出的Login URL 是应发布 SAML 响应的端点。它可能看起来像这样:

    POST / HTTP/1.1
    Host: im--partial.my.salesforce.com
    Content-Type: application/x-www-form-urlencoded
    Content-Length: nnn
    SAMLResponse=response
    

    您需要担心 SAML 请求吗?这取决于您的工作流程和所需的最终用户体验。进入这个决定的考虑值得他们自己的 SO 问题。同时,查看SAML Technical Overview 了解这些工作流程的摘要。

    最后但同样重要的是,Salesforce out of the box 在某些 Salesforce 产品上支持通过您的手机号码进行的整个身份验证序列。

    【讨论】:

    • 非常感谢。有效。你已经详细回答了我所有的问题。我什至没有想过使用 POST。另外,感谢您的最后一点。我会检查的。
    • 如果其他人面临同样的问题并想知道如何从 javascript 代码中发布。请检查这个 - play.golang.org/p/b-td-FXz8Pm
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多