SpringSecurity
文章平均质量分 95
Java权限框架SpringSecurity学习笔记
Lucas小毛驴
一个热爱编程的小老弟
展开
-
SpringSecurity授权流程分析+动态授权实现
代码运行到这里后,我们拿到了系统配置的URL权限attributes,认证用户对象Authentication也拿到了,还有当前请求相关的信息FilterInvocation ,也就是这个方法的参数object,接下来授权肯定是拿着三部分的信息去实现的。之前说过,SpringSecurity过滤器链,图中绿色的是认证相关的,蓝色部分是异常相关的,而橙色部分是授权相关,今天我们就是要理清橙色部分授权相关的流程,以及实现动态授权。通过上面的分析,我们大体能了解到整个授权的流程是这样的:(网上找的图)......原创 2022-08-12 16:09:37 · 1963 阅读 · 0 评论 -
SpringSecurity+JWT登录认证
其实,到了这里我们就差将我们自定义的Filter和Provider添加到SpringSecurity的主配置中,就实现了认证了,但我们这次用的是JWT方式,服务器端并没有记录登录用户的信息,因此我们需要多一个过滤器,用来拦截请求,验证Token的,如果请求携带了Token,并且token里的信息是正确的,我们才将Authentication设置已认证,让SpringSecurity过滤器链去做后续的鉴权啥的。 俺今天是要使用SpringSecurity实现JWT的认证,前后端分离,使用JSON交互。...原创 2022-08-11 11:33:13 · 2047 阅读 · 0 评论 -
SpringSecurity自定义认证
学习了SpringSecurity的使用,以及跟着源码分析了一遍认证流程,掌握了这个登录认证流程,才能更方便我们做自定义操作。 下面我们来学习下怎么实现多种登录方式,比如新增加一种邮箱验证码登录的形式,但SpringSecurity默认的Usernamepassword方式不影响。自定义一个邮箱验证码的认证,将邮箱号码作为key,验证码作为value存放到Redis中缓存。首先回顾下之前源码分析的认证流程,如下图:首先前端是填写邮箱,点击获取验证码输入获取到的验证码,点击登录按钮,发送登录接口(/em原创 2022-08-11 11:31:43 · 4922 阅读 · 9 评论 -
SpringSecurity认证流程分析
SpringSecurity的认证,其实就是我们的登录验证。 Web系统中登录验证的核心就是凭证,比较多使用的是Session和JWT,其原理都是在用户成功登录后返回给用户一个凭证,后续用户访问时需要携带凭证来辨别自己的身份。后端会根据这个凭证进行安全判断,如果凭证没问题则代表已登录,否则则直接拒绝请求。 以下内容会先分析源码理清楚认证的流程。...原创 2022-08-11 11:29:12 · 1656 阅读 · 0 评论 -
SpringSecurity的基本上手学习
方法,该方法的参数就是用户登录时输入的用户名,通过用户名去查找数据库,如果查不到这个用户则抛出异常,如果查到了,则继续查找该用户具有的角色信息,并将获取到的user对象返回,由系统提供的。 在之前的例子中定义了三种角色,但是三种角色之间是没有任何关系的,一般来说角色权限是存在一定关系的,比如ROLE_admin一般是既具有admin权限,也具有user的权限的。也就是通过用户名查找用户,找得到就查下角色信息,将这个用户对象返回,系统会拿用户输入的密码与查询返回的用户对象密码去比对。...原创 2022-08-11 11:21:21 · 200 阅读 · 0 评论