shiro与CAS集成以后的单点退出
效果任何一个应用退出以后 所有应用都要重新登录
实现思路:利用shiro的logoutfilter先shiro退出,shiro退出系统以后重新定向到cas的退出,并携带返回的url
1.重新配置shiro的登出跳转LogoutFilter为shiro的退出filter
shiro退出以后跳转到cas的退出
cas退出以后通过service参数跳转回应用界面
<bean id="logout" class="org.apache.shiro.web.filter.authc.LogoutFilter"> <property name="redirectUrl" value="https://cas.server.com:7070/cas/logout?service=http://localhost:8088/test1"/> </bean>
2.覆盖shiro的默认退出实现
将配置的logout 覆盖shiro默认的logout
<property name="filters"> <util:map> <entry key="cas" value-ref="casFilter" /> <entry key="logout" value-ref="logout" /> </util:map> </property>
3.打开cas的退出重定向开关 修改cas中的cas-servlet.xml文件
将cas.logout.followServiceRedirects:false属性改为cas.logout.followServiceRedirects:true
<bean id="logoutAction" class="org.jasig.cas.web.flow.LogoutAction" p:servicesManager-ref="servicesManager" p:followServiceRedirects="${cas.logout.followServiceRedirects:true}"/>
4.页面可以直接连接shiro的退出:http://localhost:8080/test1/logout
出处:http://itindex.net/detail/54102-shiro-cas
相关推荐
Shiro 负责身份验证和授权,而 Cas 负责单点登录和单点退出。通过 Shiro+Cas,可以实现基于角色的访问控制和细粒度的权限控制。 相关知识点 * Shiro 框架的基本概念和组件 * Cas 协议和 CAS 服务器的工作原理 * ...
最后,配置了`CAS Single Sign Out Filter`,这是一个专门处理CAS单点登出的过滤器。通过`DelegatingFilterProxy`,它指向了名为 `singleSignOutFilter` 的bean。当用户在任何已集成CAS的应用中登出时,这个过滤器会...
总之,结合Apache Shiro和CAS可以在Spring环境下实现高效、安全的单点登录解决方案。这一方案既满足了用户便捷的登录体验,又简化了系统管理员对多个应用的权限管理。通过细致的配置和测试,开发者可以构建出稳定...
JEECG智能开发平台的单点登录(SSO)功能是通过集成Kisso实现的,Kisso是一个轻量级Java权限框架,它利用加密会话cookie机制来实现单点登录服务。单点登录是一种用户登录认证方法,允许用户在多个应用系统中,只通过...
Spring + Shiro + CAS 实现 SSO 单点登录示例代码 本篇文章主要介绍了 Spring + Shiro + CAS 实现 SSO 单点登录的示例代码,具有一定的参考价值。下面将详细介绍标题、描述、标签和部分内容中所涉及到的知识点。 ...
在实际应用中,单点退出(Single Sign-Out,简称SSO)也是重要的一环。当用户在一个应用中注销时,SSO机制会通知其他所有关联应用,同步注销状态,确保用户在整个系统中的会话都被终止。 总结起来,这个"单点登录...
Shiro CAS 集成是将 Apache Shiro 安全框架与 Central Authentication Service(CAS)进行整合,以实现单点登录(Single Sign-On, SSO)功能。Apache Shiro 是一个强大且易用的 Java 安全框架,提供认证、授权、会话...
单点登录(Single Sign-On,简称SSO)是一种网络用户身份验证的机制,允许用户在一次登录后,访问多个相互信任的应用系统而无需再次进行身份验证。SSO简化了用户的登录流程,提高了用户体验,同时也降低了管理多系统...
4. **单点登出**:理解如何实现用户在一次登出后,同时退出所有已认证的应用。 5. **自定义认证**:通过源码解析,学习如何编写自己的认证模块以支持不同的凭证类型,如LDAP、数据库或其他外部系统。 6. **票证...
在实际开发中,我们经常会遇到一些常见的技术场景,例如单点登录、权限认证、上传数据的安全性等等。 1. 单点登录 单点登录的英文名叫做:Single Sign On(简称SSO),它允许用户只需要登录一次,就可以访问所有...