跨域sso与OpenAM与SAML 2.0

时间:2013-08-28 10:40:18

标签: single-sign-on saml-2.0 openam opensso

我需要cross domain sso。所以,我选择OpenAMSAML。我有两个托管在不同服务器和主机上的应用程序,我需要实现SSO。 现在我读到OpenAM with SAML,但可以获得有关设置的核心概念。 LDAP用作用户数据存储。 现在我有一些想法,并想验证它是否符合我的要求。

  1. 由于我有两个需要SSO实现的应用程序(AppAAppB)。我需要两个OpenAM配置为服务提供商?并应部署在不同的tomcat容器中?每个service providers是否应该部署在AppAAppB
  2. 我需要另一个单独的tomcat容器用于identity provider OpenAM?
  3. sp应该注册到idpidp应该注册到同一sp内的Circle of trust
  4. 我还需要做其他事吗?我是否必须为每个LDAPidp配置单独的sp?无论如何,在我的情况下,什么是理想的设置?

2 个答案:

答案 0 :(得分:1)

您需要一个IdP,您的应用必须实施SP。如果您的应用程序是基于Java的,您可以利用OpenAM的Fedlet或使用Spring Security SAML扩展(就像魅力一样)。

还有PHP SAML SP甚至是Apache http服务器SAML模块......

或者您可以将OpenIG用作反向代理(但它是一个java Web应用程序),它也实现了SAML SP。

-Bernhard

答案 1 :(得分:0)

另一种可以开箱即用的OpenAM解决方案是使用OpenAM身份联合:

  1. 使用标准的OpenAM身份联合设置(使用IDP和SP),如本文所述:http://fczaja.blogspot.com/2012/06/idp-initiated-sso-and-identity.html
  2. 您需要拥有AppA的IDP和AppB的SP,反之亦然。 IDP将连接到您的用户商店。
  3. 在SP端使用类似OpenDS的东西创建虚拟用户存储。
  4. 将所有用户从IDP导入SP(使用计划的每日批处理作业)
  5. 根据一个或多个用户属性实施自动联盟。
  6. 在SP端使用OpenAM授权功能来访问SP端App