2024年4月28日
前景提要 springboot+cas+shiro+pac4j实现单点登录,但是登出有问题,服务端退出了,客户端还是登录状态! 0 [待解决问题] 之前没在shiroConfig里加public FilterRegistrationBean singleSignOutFilter() ;可以实现单点登录,登出有问题,家里这个方法后,启动报错: java.lang.IllegalArgumentException: casServerUrlPrefix cannot be null. at org.jasig.cas.client.util.CommonUtils.assertNotNull(CommonUtils.java:87) at org.jasig.cas.client.session.SingleSignOutHandler.init(SingleSignOutHandler.java:130) at org.jasig.cas.client.session.SingleSignOutFilter.init(SingleSignOutFilter.java:54) ………………………………… package com.audaque.gm.config; import com.audaque.gm.modules.sys.shiro.ShiroPermsFilterFactoryBean;……
阅读全文
2024年4月28日
SpringBoot中Shiro使用Pac4j集成CAS认证 Pac4j 简介 Pac4j与Shiro,Spring Security一样都是权限框架,并且提供了OAuth - SAML - CAS - OpenID Connect - HTTP - OpenID - Google App Engine - Kerberos (SPNEGO) 的认证集成。且可… pac4j探索(一)之buji-pac4j 、facebo……
阅读全文
2024年4月28日
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 >[font=-apple-system, system-ui, Segoe UI, Helvetica, Arial, sans-serif][color=#24292e][b][/b][/color][/font][/align][align=left][font=-apple-system, system-ui, Segoe UI, Helvetica, Arial, sans-serif][color=#24292e][b] <dependency>[/b][/color][/font][/align][align=left][font=-apple-system, system-ui, Segoe UI, Helvetica, Arial, sans-serif][color=#24292e][b] <groupId>org.pac4j</groupId>[/b][/color][/font][/align][align=left][font=-apple-system, system-ui, Segoe UI, Helvetica, Arial, sans-serif][color=#24292e][b] <artifactId>pac4j-cas</artifactId>[/b][/color][/font][/align][align=left][font=-apple-system, system-ui, Segoe UI, Helvetica, Arial, sans-serif][color=#24292e][b] <version>3.8.3</version>[/b][/color][/font][/align][align=left][font=-apple-system, system-ui, Segoe UI, Helvetica, Arial, sans-serif][color=#24292e][b] </dependency>[/b][/color][/font][/align][align=left][font=-apple-system, system-ui, Segoe UI, Helvetica, Arial, sans-serif][color=#24292e][b][/b][/color][/font][/align][align=left][font=-apple-system, system-ui, Segoe UI, Helvetica, Arial, sans-serif][color=#24292e][b] <dependency>[/b][/color][/font][/align][align=left][font=-apple-system, system-ui, Segoe UI, Helvetica, Arial, sans-serif][color=#24292e][b] <groupId>io.buji</groupId>[/b][/color][/font][/align][align=left][font=-apple-system, system-ui, Segoe UI, Helvetica, Arial, sans-serif][color=#24292e][b] <artifactId>buji-pac4j</artifactId>[/b][/color][/font][/align][align=left][font=-apple-system, system-ui, Segoe UI,……
阅读全文
2024年4月28日
一、现存问题 1.1 现存问题 认证(登录):认证操作流程都差不多,但是每次都需要手动的基于业务代码去实现,很麻烦! 授权:如果权限控制粒度比较粗,可以自身去实现,但是如果控制粒度比较细,操作麻烦! 分布式会话管理:单体项目时,需要依赖Web容器的Session实现会话,搭建了集群或者是分布式……
阅读全文
2024年4月28日
博主是一位二线城市小企业的架构师,擅长开源项目架构的使用与落地。而在过去中走过了不少弯路,也遇到了很多挫折。所以博主想把自己的经验整理成文章传授给大家。 在这里能学到什么?? 1.如果你想入坑java,博主会提供文章,资料,视频,从零开始带你玩转java,效果绝对比在外培训强的多。 2……
阅读全文
2024年4月28日
2018-08-29更新:由于pac4j 3.1 版本未支持单点登出,故升级到 4.0.0 版本,pac4j-cas 升级到 3.0.2版本,可以实现单点登出。 首先是 maven 配置。 <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-spring</artifactId> <version>1.4.0</version> </dependency> <dependency> <groupId>org.pac4j</groupId> <artifactId>pac4j-cas</artifactId> <version>3.0.2</version> </dependency> <dependency> <groupId>io.buji</groupId> <artifactId>buji-pac4j</artifactId> <version>4.0.0</version> <exclusions> <exclusion> <artifactId>shiro-web</artifactId> <groupId>org.apache.shiro</groupId> </exclusion> </exclusions> </dependency> import io.buji.pac4j.filter.LogoutFilter; import io.buji.pac4j.filter.SecurityFilter; import io.buji.pac4j.subject.Pac4jSubjectFactory; import org.apache.shiro.session.mgt.SessionManager; import org.apache.shiro.session.mgt.eis.MemorySessionDAO; import org.apache.shiro.session.mgt.eis.SessionDAO; import org.apache.shiro.spring.LifecycleBeanPostProcessor; import org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor; import org.apache.shiro.spring.web.ShiroFilterFactoryBean; import org.apache.shiro.web.mgt.DefaultWebSecurityManager; import org.apache.shiro.web.servlet.SimpleCookie; import org.apache.shiro.web.session.mgt.DefaultWebSessionManager; import org.pac4j.core.config.Config; import org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.web.servlet.FilterRegistrationBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.DependsOn; import org.springframework.web.filter.DelegatingFilterProxy;<br>import org.jasig.cas.client.session.SingleSignOutFilter; import javax.servlet.DispatcherType; import……
阅读全文
2024年4月28日
buji-pac4j项目是Shiro web应用程序和web服务的一个简单而强大的安全库,它支持身份验证和授权,但也支持高级功能,如CSRF保护。它基于Java8、Shiro1.5和pac4j安全引擎v4。它在Apache2许可证下可用。 主要概念和组成部分: 客户端表示身份验证机制。……
阅读全文
2024年4月28日
1.3.x版本后。shiro接入pac4j pac4j是一个支持多种支持多种协议的身份认证的Java客户端。 它有一个非常简单和统一的API以支持以下这6个客户端认证机制: OAuth (1.0 & 2.0) CAS (1.0, 2.0, SAML, logout & proxy) HTTP (form & basic auth authentications) OpenID SAML (2.0) Google App Engine UserService. OpenID Connect 1.0 提供 7 种库实现用于不同环境: the CAS server (using the cas-server-support-pac4j library) the Play 2.x framework (using the play-pac4j_java and……
阅读全文
2024年4月28日
数据操作相关视频讲解: 用python编程Excel有没有用处? 1.cookie 由服务端生成,保存在客户端(由于前后端有交互,所以安全性差,且浪费带宽) 存储大小有限(最大 4kb ) 存储内容只接受 String 类型 保存位置: 若未设置过期时间,则保存在 内存 中,浏览器关闭后销毁 若设置了过期时间,则保存在 系统硬盘 中,直到……
阅读全文
2024年4月28日
gitblog_00015 于 2024-04-18 09:40:01 发布 探索SSO-Shiro-CAS:一站式身份验证解决方案 项目地址:https://gitcode.com/tinybyhuang/sso-shiro-cas 本文将介绍一个开源项目SSO-Shiro-CAS,这是一个基于Apache Shiro和CAS实现的单点登录(Sin……
阅读全文