配置Ping Federate和Spring SAML以验证应用程序

hyp*_*ite 2 saml federated-identity pingfederate saml-2.0 spring-saml

我在运行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

此图像还显示了IdP和SP两侧的联合身份软件.

我已经使用我的本地PingFederate服务器创建了一个IdP和SP,只是为了查看配置选项是什么,我很困惑,我实际上需要能够为我的Spring Security应用程序提供SSO.

我的问题是:

  1. 我是否需要一个IdP和SP来实现我想要做的事情.

  2. 现在我们的用户名和密码存储在SQL Server中,我会利用它来PingFederate来验证用户吗?

  3. 我是否应该为此使用Spring Security SAML,或者其他路由更合适?

感谢您的帮助,我已经联系了PingFederate,但我的区域解决方案架构师恰好在周五之前.

如果我完全不在思考,我也会道歉,我正在努力将我的想法包围在需要的地方.

Vla*_*fer 5

假设您的目标是在Ping和您的应用程序之间建立联合(为了例如外部化身份验证或启用单点登录),您的想法是正确的.

Ping Federate充当身份提供者(IDP),您可以将其配置为连接到SQL服务器,以便可以从那里对现有用户进行身份验证.IDP与称为服务提供商(SP)的其他应用程序通信.

为了连接到Ping,您的应用程序因此需要能够充当SAML 2.0服务提供者,并且使用Spring SAML是一种非常好的方法来实现它.

SP和IDP之间用于单点登录的典型数据流类似于:

  1. 用户访问需要身份验证的SP应用程序
  2. SP创建AuthenticationRequest并将其发送到IDP(在用户的浏览器中使用重定向)
  3. IDP处理请求并验证用户身份
  4. IDP使用AuthenticationResponse消息回复SP
  5. SP处理响应并基于所包含的数据为用户创建会话