Java 如何跨部署在两个不同tomcat实例中的两个web应用程序共享会话

Java 如何跨部署在两个不同tomcat实例中的两个web应用程序共享会话,java,session,spring-security,single-sign-on,josso,Java,Session,Spring Security,Single Sign On,Josso,我有两个不同的web应用程序运行在两个不同的tomcat实例上。我需要有一个共同的网页链接到这两个应用程序。但我应该只能登录一次,并且应该能够访问其他应用程序中的链接,而无需再次登录。 有办法吗?请查看可用于在应用程序中创建单一登录解决方案的方法您可以使用令牌参数,其中令牌可以是用户名/一些加密的凭据。您可以在这两个应用程序中验证凭据是否正确 另一种方法是,如果您的应用程序位于同一域下,则会设置cookie并从中重新创建会话。最简单的方法是提供中央身份验证服务(CAS):单点登录。它为您的应用程

我有两个不同的web应用程序运行在两个不同的tomcat实例上。我需要有一个共同的网页链接到这两个应用程序。但我应该只能登录一次,并且应该能够访问其他应用程序中的链接,而无需再次登录。
有办法吗?

请查看可用于在应用程序中创建单一登录解决方案的方法

您可以使用令牌参数,其中令牌可以是用户名/一些加密的凭据。您可以在这两个应用程序中验证凭据是否正确


另一种方法是,如果您的应用程序位于同一域下,则会设置cookie并从中重新创建会话。

最简单的方法是提供中央身份验证服务(CAS):单点登录。它为您的应用程序提供集中的访问控制和身份验证。Spring Security有一个与CAS无缝集成的CAS模块。为此,您需要设置一个CAS服务器

有关CAS如何工作和实现的更多信息,请参阅文档


另一种方法是创建一个Tomcat集群,并维护集群下两个节点之间的会话复制。 请参阅Tomcat手册如何创建Tomcat集群并启用会话复制。
您可以使用Spring RMI更新关于会话信息等的“相互节点”应用程序上下文。

感谢您的回复。我们最终决定使用Spring security提供的预身份验证过滤器来满足这一要求,并使用身份验证令牌进行验证