2024年4月28日
注意↓↓↓↓ 其实直接调用 http://cas服务/serviceValidate?service=xxx&ticket=xxx就能校验和获取用户信息了 这里将pac4j-cas的代码拷出来改, 也是方便理解它做了哪些事情. 一. 关于pac4j-cas 这几天一直在折腾pac4j-……
阅读全文
2024年4月28日
简介: Pac4j 简介 Pac4j与Shiro,Spring Security一样都是权限框架,并且提供了OAuth - SAML - CAS - OpenID Connect - HTTP - OpenID - Google App Engine - Kerberos (SPNEGO) 的认证集成。且可以和shiro,security等权限框架集成。 Pac4j CAS认证流程 0_5988974176867581 代码 关键部分 说明: pac4j-cas与shiro的集成是通过……
阅读全文
2024年4月24日
作者丨Ai,来源丨宅码 编辑丨极市平台 本文收集整理了公开网络上一些常见的异常检测方法(附资料来源和代码)。不足之处,还望批评指正。 一、基于分布的方法 1. 3sigma 基于正态分布,3sigma准则认为超过3sigma的数据为异常点。 图1: 3sigma <section><span><span>def</span> <span>three_sigma</span><span>(s)</span>:</span><br> mu, std = np.mean(s), np.std(s)<br> lower, upper = mu<span>-3</span>*std, mu+<span>3</span>*std<br> <span>return</span> lower, upper<br></section> 2. Z-score Z-score为标准分数,测量数据点和平均值的距离……
阅读全文
2024年4月24日
在40岁老架构师 尼恩的读者交流群(50+)中,很多小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试机会,遇到很多很重要的面试题: 1.请解释ThreadLocal是什么,以及它的主要用途是什么? 2.ThreadLocal的内部机制是怎样的?请解……
阅读全文
2024年4月24日
尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50+)中,最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团、蚂蚁、得物的面试资格,遇到很多很重要的相关面试题: 手写一个跳表? redis为什么用跳表不用B+树吗? 最近有小伙伴在蚂蚁、面试字节,都问……
阅读全文
2024年4月24日
免责声明:请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。如有侵权烦请后台告知,我们会立即删除并致歉。谢谢 快将此公众号设置为星标🌟🌟🌟吧,获取到第一手推送信息! GraphQL是一种受到在线数据存储和协作平台Meta、Instagram和Go……
阅读全文
2024年4月24日
<section><mp-common-profile data-pluginname="mpprofile" data-id="MzUxNzk1MjQ0Ng==" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/YBFV3Da0Nwvv72YkFO0qPibDKicOCsfltiaE9070DOu4iahXnicYwRIHcxe9VBicAy45MkPqy8nZzLTVibugOtV0ORFcg/300?wx_fmt=png&wxfrom=19" data-nickname="程序员成长指北" data-alias="coder_growth" data-signature="专注 Node.js 技术栈分享,从 前端 到 Node.js 再到 后端数据库,祝您成为优秀的高级 Node.js 全栈工程师。一个有趣的且乐于分享的人。座右铭:今天未完成的,明天更不会完成。" data-from="0" data-origin_num="101" data-is_biz_ban="0" data-isban="0" data-biz_account_status="0" data-index="0"></mp-common-profile></section><section><span data-style="padding: 4px 7px;……
阅读全文
2024年4月24日
新开的项目,果断使用 spring boot 最新版本 2.0.3 ,免得后期升级坑太多,前期把雷先排了。 由于对 shiro 比较熟,故使用 shiro 来做权限控制。同时已经存在了 cas 认证中心, shiro 官方在 1.2 中就表明已经弃用了 CasFilter ,建议使用 buji-pac4j ,故使用 pac4j 来做单点登录的控制。 废话不说,代码如下: 2018-08-29更新:由于pac4j 3.1 版本未支持……
阅读全文
2024年4月24日
VIP文章 H阿布 于 2018-02-01 18:22:35 发布 在pac4j探索的上一篇文章大致讲述了一下buji-pac4j+CAS的认证流程。这里记录一下本人实现的最简单的单点登录,仅作为笔记、学习交流之用,戳这里获取本文源码。 一、项目框架 1、 buji-pac4j(v.3.0.0) 2、shiro (v.1.4.0) 3、spring……
阅读全文
2024年4月24日
之前没在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; import com.audaque.gm.modules.sys.shiro.UserFilter; import com.audaque.gm.modules.sys.shiro.UserPermFilter; import com.audaque.gm.modules.sys.sso.CallbackFilter; import com.audaque.gm.modules.sys.sso.CasRealm; import com.audaque.gm.support.shiro.listener.UserSessionListener; import com.audaque.gm.support.shiro.session.UserSessionDAO; import com.audaque.gm.support.shiro.session.UserSessionFactory; import io.buji.pac4j.filter.LogoutFilter; import io.buji.pac4j.filter.SecurityFilter; import io.buji.pac4j.subject.Pac4jSubjectFactory; import org.apache.shiro.mgt.SecurityManager; import org.apache.shiro.session.SessionListener; 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.jasig.cas.client.session.SingleSignOutFilter; import org.jasig.cas.client.session.SingleSignOutHttpSessionListener; 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.boot.web.servlet.ServletListenerRegistrationBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.DependsOn; import org.springframework.core.Ordered; import org.springframework.core.annotation.Order; import org.springframework.stereotype.Component; import org.springframework.web.filter.DelegatingFilterProxy;……
阅读全文