我们如何将用户会话从一个spring应用程序上下文流向另一个?

时间:2012-10-26 05:34:20

标签: spring security session sharing applicationcontext

我们如何将用户会话从一个spring应用程序上下文转移到另一个? 基本上我有一个代表Web Layer的spring应用程序和另一个代表REST层的spring应用程序。我希望当Web Layer访问REST层时,包含用户信息的会话可以从REST层的Web进行身份验证。

请建议。

收到第一个ans后编辑:
目前,我们确实拥有Web Layer以及安全性和所有其他流程。我们的目的是引入REST层。此REST层假定由当前Web层和其他API调用。我们不希望对Web Layer进行任何更改,但同时需要将安全性放在REST层,这也应该在调用REST服务时适用于Web Layer。

1 个答案:

答案 0 :(得分:0)

区分SSO和会话共享。如果您只是希望身份验证在应用程序之间传输(用户只需登录一次),那么您需要某种形式的单点登录(SSO),CAS就是一个例子,但有很多。< / p>

另一方面,如果您需要跨不同节点(或应用程序)访问完整会话(以及应用程序放入其中的所有内容),您可以查看类似Memcached或{Terracotta的内容。 {3}}。值得注意的是会话复制是相当I / O密集型的,对于大型站点,它通常需要专用的网络接口来进行复制。

但是,我会告诉你,如果你的应用程序紧密耦合以至于它们需要共享相同的会话状态,那么它们可能首先不应该分开?这有点错误的设计和架构假设。