Java EE中的单点登录

时间:2009-02-24 06:16:33

标签: java-ee

我正在尝试在两个Java EE应用程序之间实现单点登录。这两个应用程序共享相同的注册表 - LDAP。我想通过一次身份验证从一个应用程序导航到另一个应用程序。

我使用WAS 6 / RAD 7并且我已配置我的服务器以启用SSO。我的应用程序需要做哪些更改?我如何测试这个工作?

2 个答案:

答案 0 :(得分:2)

CAS的实施对您有用,有详细记录,the changes needed“CASify”您的应用非常容易

答案 1 :(得分:1)

您的应用程序如何使用LDAP?您是否实施了特定于应用程序的身份验证机制?

如果您使用Java EE应用程序服务器(WAS)的身份验证机制,则无需在WAS上启用SSO,以便您的用户能够一次登录这两个应用程序。

在WAR / EAR描述符中,定义Java EE角色和身份验证方法,限制应用程序对这些角色的成员的访问,配置WAS以针对LDAP进行身份验证,并在部署应用程序期间绑定应用程序中定义的角色到LDAP用户/组(例如,针对LDAP进行身份验证的所有用户,或某些更具体的组)。

可以使用WAR / EAR编辑器在RAD 7中全部指定WAR / EAR描述符和部署选项的更改,必须使用WAS管理控制台完成LDAP的设置。

编辑:

好的,很长一段时间,没有看到(在WAS中这样的配置)。不得不亲自尝试,似乎必须打开SSO。

这是我的设置:我有两个简单的应用程序,一个使用基于表单的身份验证,另一个使用http身份验证,每个都为其Web资源定义了安全角色和安全约束。这两个角色在EAR application.xml编辑器中绑定到“所有经过身份验证的用户”(特定于WAS的部署信息,存储在ibm-application-bnd.xmi中)。关闭SSO后,我发现了与你一样的行为。

然而,在开启SSO之后,它开始工作......

我是如何打开SSO的:有多种选择,这是如何使用基本设置启用基于LTPA的SSO(WAS 6):转到管理控制台 - >安全 - >全球安全 - >选择LTPA作为认证机制 - >申请,然后安全 - >全球安全 - >认证机制 - > LTPA - >单点登录 - >已启用 - >申请,然后全部保存并重新启动。

进一步设置......可能需要为prod重新生成LTPA密钥 部署。要让其他WAS服务器加入SSO,请同步LTPA密钥。

对不起,我最初的回应很混乱。

相关问题