我们希望通过一些IBM Domino / Websphere产品和一个自定义Web应用程序实现SSO基础架构。所有IBM产品都配置为SSO。因此,WebSphere Application Server 8在成功登录其中一个IBM产品后生成LTPAToken2。我们希望为自己的自定义Web应用程序实现相同的行为。登录此Web应用程序后,应生成LTPAToken2。 因此我的问题是:是否可以在我们的自定义Web应用程序中生成有效的LTPAToken2?或者,是否可以将WebSphere Application Server API用于此代?实现这一目标的步骤是什么?目前,我们的自定义Web应用程序不是托管在WAS中,而是托管在Tomcat上。
谢谢和最诚挚的问候 本
答案 0 :(得分:2)
只要您的应用程序托管在tomcat服务器上是不可能的。 IBM没有用于创建LTPA
令牌的开放API。
如果您拥有相同的用户目录并使用标准的Java安全机制,则可以将应用程序移至WAS
,其中配置了SSO。您不仅可以在登录Web应用程序时创建LTPA
令牌而无需进一步配置。
由于它似乎有两个不同用户目录的解决方案,共享相同的用户ID而不是密码,因此您需要采取其他措施来实现SSO。
答案 1 :(得分:1)
如果您的Tomcat应用程序与(一个)WebSphere服务器位于同一个域中,并且Tomcat服务器具有对WebSphere实例的网络访问权限,那么您的Tomcat应用程序中的servlet可以接受其请求中的凭据并传递它们在WAS实例上的/<secured app>/j_security_check
之类的出站http请求中,如果成功则记录LtpaToken2
,然后在Tomcat上的servlet响应中添加一个带有其值的cookie。
只要两个服务器位于同一个域,如果Tomcat应用程序将用户链接/重定向到WAS应用程序上的安全URI,并且您有SSO,则浏览器将发回cookie。