在我们的 Web 应用程序中,我想要使用salesforce.com对用户进行身份验证的身份提供者 ( IdP ) 。
我已经完成了salesforce.com 上的单点登录设置。
在这些设置之后,salesforce 提供了一个元数据文件。
请告诉我:
- 我需要在 salesforce.com 上进行任何其他设置吗?
- 接下来在我的 java 代码中做什么来验证用户?
在我们的 Web 应用程序中,我想要使用salesforce.com对用户进行身份验证的身份提供者 ( IdP ) 。
我已经完成了salesforce.com 上的单点登录设置。
在这些设置之后,salesforce 提供了一个元数据文件。
请告诉我:
如果您让 Salesforce.com 作为 SAML 服务提供商,那么您需要将 SAML 断言从您的 IdP 发送到 Salesforce.com 以验证用户。这些基本上是经过签名的 XML blob,它们在 HTTP 重定向或 HTTP POST 中传递以对用户进行身份验证。
从 Salesforce.com 配置方面来看,它非常简单。以下是使用 OpenSSO 解决方案进行配置所需的示例:https ://indirat.wordpress.com/salesforce/
您在该配置中输入的内容在很大程度上取决于您的 IdP 可以做什么。例如,SAML 的版本、用户标识符在 SAML 断言中的位置和位置,以及将 IdP 使用的密钥与数字签名断言相匹配的公共验证证书。
如何在“你的 Java 代码”中处理这个问题是一个有很多答案的大问题。您应该使用经过验证的 SAML 解决方案作为您的 IdP,而不是尝试自己实施 SAML 规范。有几个开源库,例如OpenSAML,可以在 Java 环境中很好地工作,但需要大量工作才能集成。如果您有预算,SSO 和联合解决方案供应商(如Ping Identity )提供的商业解决方案可以让事情变得相当容易。