我在运行 Windows_Server-2008-R2_SP1-English-64Bit-Base-2014.04.09 的 AWS EC2 上安装了 PingFederate。我有一个使用 Spring Security 进行身份验证的 Java 应用程序。
我已阅读有关如何使用 PingFederate 设置身份提供商 (IdP) 和服务提供商 (SP) 的信息。据我所知,IdP 是提供登录凭据(身份)并将其传递给 SP 的应用程序用户,该 SP 在此页面的图表中将目标应用程序与 SP 分开:
http://documentation.pingidentity.com/display/PF66/Service+Providers+and+Identity+Providers http://documentation.pingidentity.com/display/PF66/Service+Providers+and+Identity+Providers
此图还显示了 IdP 和 SP 两侧的联合身份软件。
我使用本地 PingFederate 服务器创建了一个 IdP 和 SP,只是为了查看配置选项是什么,但我对其中的哪些部分实际上需要能够为我的 Spring Security 应用程序拥有 SSO 感到困惑。
我的问题是:
我是否需要 IdP 和 SP 来实现我正在尝试做的事情?
现在我们的用户名和密码存储在 SQL Server 中,我是否可以利用 PingFederate 来验证用户身份?
我是否应该为此使用 Spring Security SAML 还是其他路线更合适?
感谢您的帮助,我已联系 PingFederate,但我的区域解决方案架构师恰好要到周五才上班。
如果我的想法完全偏离了,我也很抱歉,我正在努力把注意力集中在需要什么上。
假设您的目标是在 Ping 和您的应用程序之间建立联合(例如为了外部化身份验证或启用单点登录),您的想法是正确的。
Ping Federate 充当身份提供程序 (IDP),您可以将其配置为连接到您的 SQL 服务器,以便它可以从那里对您的现有用户进行身份验证。 IDP 与称为服务提供商 (SP) 的其他应用程序进行通信。
因此,为了连接到 Ping,您的应用程序需要能够充当 SAML 2.0 服务提供商,而使用 Spring SAML 是实现此目的的一个非常好的方法。
SP 和 IDP 之间单点登录的典型数据流类似于:
- 用户访问SP应用需要认证
- SP 创建 AuthenticationRequest 并将其发送到 IDP(在用户浏览器中使用重定向)
- IDP 处理请求并验证用户身份
- IDP 使用 AuthenticationResponse 消息响应 SP
- SP 处理响应并根据包含的数据为用户创建会话
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)