加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何使用Spring Security在多个基于JVM的应用程序上实现单点登录

发布时间:2020-12-15 01:47:34 所属栏目:大数据 来源:网络整理
导读:我目前正在尝试在多个基于JVM(Grails,Servlets)的Web应用程序上实现单一登录解决方案,这些Web应用程序当前都部署在同一个servlet容器中(目前是Tomcat,但不希望将我的解决方案仅限于Tomcat).所有Web应用程序共享一个公共数据库 我已经看过使用CAS或其他第三方

我目前正在尝试在多个基于JVM(Grails,Servlets)的Web应用程序上实现单一登录解决方案,这些Web应用程序当前都部署在同一个servlet容器中(目前是Tomcat,但不希望将我的解决方案仅限于Tomcat).所有Web应用程序共享一个公共数据库

我已经看过使用CAS或其他第三方库创建新的Web服务来处理单点登录的各种选项,但似乎没有一个真正满足业务需求.我当前的实现涉及创建一个新的jar库,它具有基于Spring Security的AuthenticationProviders和Pre-Authentication Filters的通用实现.

在这种方法中,我有多个AuthenticationProviders(当前是Active Directory和Database)供应用程序进行身份验证.验证成功后,将在包含用户的会话表,过期时间和令牌中插入一行.令牌也将作为cookie存储在用户的计算机上,并用于验证它们在预认证过滤器中是否具有当前会话.

在我想要确保我没有创建一个巨大的安全问题之前从未这样做过,我也想知道创建令牌需要什么?此时一个简单的GUID似乎足够了吗?

目前我们正在开发Spring Security 3.0.x,尚未升级到3.1.

提前致谢.

最佳答案
在Spring Security Extensions网站上有可用于KERBEROS,OAuth和SAML的扩展.这是博客条目,提供了一个示例:SpringSource Blog

如果您使用NTLM作为SSO提供程序,请查看jespa-spring项目.

或者你可能想看看Java Open Single Sign-On Project

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读