![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
shiro安全框架
文章平均质量分 57
健康平安的活着
再给我一次重生的机会,我将加倍珍惜,将java事业进行到底。
展开
-
在linux服务器上使用软连接进行启动jar包
一 使用软连接启动jar包1.1 软连接使用 ln -fs xxx/resurce.jar /xxx/destation.jar软连接就是创建快捷方式。这里就是把xxx/resurce.jar这个原始的jar创建到/xxx/这个目录下,jar包的名字为destation.jar ;也就是说/xxx/destation.jar是xxx/resurce.jar的快捷方式。1.2 操作案例1.将windows上的jar包,上传到linux服务器的/root/export/ser...原创 2021-06-23 22:18:31 · 1004 阅读 · 0 评论 -
shiro的总结篇
一 学习资料1.1 编程不良人资料https://www.bilibili.com/video/BV1uz4y197Zm?p=1资料文档以及code:1.2 debug老师:https://edu.51cto.com/course/19148.html资料代码地址:1.3 总结纸上得来终觉浅,绝知此事要躬行。一定要多敲代码、边敲边理解、边敲边思考。...原创 2021-06-23 19:28:08 · 140 阅读 · 0 评论 -
基于idea+session组件+wagon实现打包部署
一 传统打包部署1.在本地通过 mvn clean package,打成jar包,通过CRT,xshell,winscp等软件到linux服务器上,进行执行nohup java -jar xxx.jar 启动执行。2.二 基于idea+session组件实现上传打包三 基于wagon实现一键部署...原创 2021-06-23 19:15:54 · 440 阅读 · 0 评论 -
springboot 处理xss攻击的方法
一 xss1.1 介绍xss:cross site script :跨脚本攻击,XSS是一种在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。如:在任何一个表单内,你输入一段简单的js代码:<script>for(var i=0;i<1000;i++){alert("弹死你"+i);}</script>,将其存入数据库;然后在页面中,通过一个div将其显示出来。1.2 解决办法应对XSS攻击的其中一个方式..原创 2021-06-23 16:50:49 · 4296 阅读 · 0 评论 -
shiro中考勤部门的管理
一 考勤部门1.1 前端使用了日历控件datapick //初始化InputMask控件 //Date picker $('#daterange-btn').daterangepicker({ ranges: { '今日': [moment().startOf('day'), moment()], '昨日': [moment().subtract('days', 1).startOf原创 2021-06-23 15:39:38 · 145 阅读 · 1 评论 -
shiro中数据字典管理
一 数据结构二 代码逻辑数据字典:是最简单的涉及到单张表的crud操作,其中方法加上了shiro的授权判断@RequiresPermissions("sys:dict:list")@RequiresPermissions("sys:dict:info")@RequiresPermissions("sys:dict:save")@RequiresPermissions("sys:dict:update")@RequiresPermissions("sys:dic.原创 2021-06-23 11:09:25 · 663 阅读 · 0 评论 -
使用Aop实现日志记录
一 了解Aop的概念1.连接点2.切点3.通知4.切面二 案例2.1 连接点2.2 切面,切点,通知2.3 注解package com.debug.pmp.server.annotation;import java.lang.annotation.*;/** * Created by Administrator on 2019/8/5. */@Target(ElementType.METHOD)@Retention(RetentionPolicy原创 2021-06-22 08:36:10 · 846 阅读 · 0 评论 -
shiro权限执行逻辑流程
一 认证和授权的流程详情见:https://blog.csdn.net/u011066470/article/details/117402297二 shiro权限执行的流程原创 2021-06-20 13:26:04 · 274 阅读 · 0 评论 -
权限管理系统之数据权限表RBAC
原创 2021-06-20 09:30:37 · 345 阅读 · 0 评论 -
shiro中LoginUrl与UnauthorizedUrl的作用
一 描述1.如shiroconfig的filter1原创 2021-06-19 23:32:38 · 827 阅读 · 0 评论 -
权限管理系统中功能权限&数据权限以及权限模块的实现
一 数据权限的概述二 数据权限的操作步骤2.1 思想数据权限的控制是通过部门的菜单展示来实现的。2.2 用到数据权限的地方1.用户添加时候,选择部门的下拉框2 部门管理的列表3.角色管理,新增弹框页面,选择部门的树状菜单2.3 部门管理中部门列表的数据权限2.3.1 . controller层加载部门列表,加载全部部门信息2.3.2. sevice层逻辑:将当前登录用户所拥有的部门id设置成查询部门列表的where的筛选条件...原创 2021-06-17 23:39:26 · 7933 阅读 · 2 评论 -
shiro的使用freemark实现前端控制权限
一 思路freemark实现控制前端的操作的入口(控制了其显示与否),shiro把控了后端的操作入口。二 操作配置2.1 配置application2.2 配置文件package com.debug.pmp.server.config;import com.debug.pmp.server.shiro.ShiroVariable;import org.springframework.context.annotation.Bean;import org.springframe原创 2021-06-16 21:14:37 · 734 阅读 · 5 评论 -
权限管理系统笔记
一.day011.1 项目多模块的构建1.2 项目的热部署二 day021. shiro 实现认证登录,在reaml中判断用户密码2.验证码的实现3.访问login.html页面,设置判断用户是否认证通过三 day031. 加载用户信息提供给前端2.前端页面的布局...原创 2021-06-05 23:48:38 · 460 阅读 · 0 评论 -
shiro实现不使用密码加密器进行登录
一 修改地方1.1 在shiroconfig注释掉密码注册器1.2 在自定义的reaml中设置密码判断逻辑1.认证方法里 // 下面语句包含此逻辑的判断 Md5Hash md5Hash2 = new Md5Hash(password, user.getSalt(), 1024); String realPassword=md5Hash2.toHex(); System.out.println("加密后:原创 2021-06-05 20:03:01 · 903 阅读 · 0 评论 -
shiro实现加载验证码
一 案例本操作是在上篇文章的基础上进行的操作1.1 页面<form action="${pageContext.request.contextPath}/user/login" method="post"> 用户名:<input type="text" name="username" > <br/> 密码 : <input type="text" name="password"> <br> 请输入验证码:原创 2021-06-03 06:27:05 · 308 阅读 · 0 评论 -
shiro使用redis实现将菜单权限进行缓存
一 redis的安装参考文章:https://blog.csdn.net/u011066470/article/details/114794800二 redis整合shiro2.1 启动redis服务端[root@localhost ~]# cd /usr/local/redis[root@localhost redis]# ps -ef|grep redisroot 2947 2898 0 09:48 pts/0 00:00:00 grep --col..原创 2021-06-02 11:20:38 · 766 阅读 · 2 评论 -
shiro实现本地内存Ehcache实现将菜单权限进行缓存
一 为何要使用缓存我们在认证通过进行授权,执行页面的hasRoles(xxx) ,isPermited(xxx) 这些语句时,会调用底层中自定义reaml中的doGetAutorizationInfo(xxxxxx)方法我们使用ljf账户模拟登陆:index.jsp页面:2.使用admin进行登录index.jsp页面:3.查看index.jsp页面查看后端调用:和前端页面调用标签一一对应,ljf的角色为user,则调用7次,admin的角色为admin.原创 2021-06-01 13:03:44 · 465 阅读 · 2 评论 -
shiro目前问题记录
1.springboot整合shiro基于角色实现认证和授权中,前端页面必须写死判断吗,新增一个角色,还得修改前端页面?2.基于资源实现认证和授权,前端页面怎么怎么写的?原创 2021-05-31 23:32:07 · 135 阅读 · 0 评论 -
springboot整合applicationContext实现上下文获取实例bean
一.工程结构1.1 工程结构、1.2 逻辑流程1.先用注解@component将ApplicationContextUtils放到ioc容器中2.在使用的类中进行引用。二 操作案例2.1 将application实例化放到ioc容器中package com.ljf.spring.boot.demo.util;import org.springframework.beans.BeansException;import org.springframework.cont原创 2021-05-31 17:49:36 · 1091 阅读 · 2 评论 -
shiro的通过md5+salt+hash散列进行注册操作
一 . 注册流程1.1 描述通过访问 进行注册,调用register方法:通过md5+salt+hash(1024)次,存储到数据库中,成功之后,跳转到login.jsp页面。进行登录操作。原创 2021-05-31 10:09:29 · 364 阅读 · 0 评论 -
springboot整合shiro的认证与授权流程
一 .整合流程流程图:结论:1.服务启东加载顺序是:先加载reaml,再加载securitymanager,最后shirofilter。而调用顺序是shirofilter调用securitymanager,securitymanager调用reaml。2.在登录认证时,shirofilter对请求进行过滤,公共资源放行,受限资先认证后授权,其中认证调用xx.login(xxx)就是调用自定义reaml中的doAuthenticationIfo(xxx)方法。2.在登录授权时,x.原创 2021-05-30 18:52:29 · 434 阅读 · 0 评论 -
shiro实现授权
一 授权1.1 权限授权,即访问控制,控制谁能访问哪些资源。 1.2 权限设计的对象授权可简单理解为who对what(which)进行How操作:Who,即主体(Subject),主体需要访问系统中的资源。What,即资源(Resource),如系统菜单、页面、按钮、类方法、系统商品信息等。资源包括资源类型和资源实例,比如商品信息为资源类型,类型为t01的商品为资源实例,编号为001的商品信息也属于资源实例。How,权限/许可(Permission),规定了主体对资源的操作许可,原创 2021-05-30 16:58:10 · 269 阅读 · 0 评论 -
Md5+salt实现用户加密
一.md51.1 作用一般用来进行加密或者签名特点:md5内容不可逆,相同的内容不论执行多少次,md5加密算法生成的结果都是一致的。结果:生成的结果是一个32位的16进制字符串。二 md5+saltsalt说白了就是随机的字符串2.1 md5+salt的使用注册时md5(输入明文密码+随机盐字符串)生成加密密码p1,随机盐字符串r,都存储到数据库中。登录时通过用户名查询该用户对应的加密密码p1和随机盐字符串r,按照注册时生成的规则:md5(输入明文密码+随机盐字符串)=p原创 2021-05-29 20:40:49 · 4402 阅读 · 3 评论 -
shiro的认证
一 认证1.1 认证身份认证,就是判断一个用户是否为合法用户的处理过程。最常用的简单身份认证方式是系统通过核对用户输入的用户名和口令,看其是否与系统中存储的该用户的用户名和口令一致,来判断用户身份是否正确。1.2 认证角色中的对象 Subject:主体 访问系统的用户,主体可以是用户、程序等,进行认证的都称为主体; Principal:身份信息 是主体(subject)进行身份认证的标识,标识必须具有唯一性,如用户名、手机号、邮箱地址等,一个主体可以有多个身份,但是必须有一.原创 2021-05-29 17:59:38 · 157 阅读 · 1 评论 -
shiro 的权限管理概念
一.权限管理1.1 权限管理权限管理是属于系统安全范畴的内容,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户可以访问而且只能访问自己被授权的资源。权限管理包括用户身份认证和授权两部分,简称认证授权。对需要访问的资源,首先验证用户的合法性,用户经过身份认证后,如果具有某资源的访问权限则放行访问。否则对于某些资源没有权限是无法访问的 。简而言之:权限管理就是对用户进行认证和授权。1.2 身份认证身份认证:就是判断一个用户是否为合法用户的处理过程。最常用的简单身份认证方原创 2021-05-29 15:58:50 · 276 阅读 · 2 评论 -
shiro实现加载数据库,使用资源菜单进行认证和授权操作
一.概述说明:本次操作是在上一篇的基础上进行的授权操作。在菜单权限表中,admin具有id=2的菜单权限;ljf具有id=1的菜单权限,如下图也就是说admin能访问所有模块的权限;ljf具有只能访问订单管理下的添加权限。二.项目操作2.1 配置userDao层package com.shiro.ljf.demo.sptshirodemo.dao;import com.shiro.ljf.demo.sptshirodemo.entity.MenuPerms;impor原创 2020-11-12 22:50:40 · 233 阅读 · 0 评论 -
shiro实现加载数据库,使用角色的认证与授权操作
一.需求描述:1.新建权限管理的那5张表,如下图:新建两个用户:一个admin用户的角色为admin,ljf用户的角色为user。其中,admin角色能访问到:订单管理、用户管理、系统管理、日志管理。而用户角色只能够访问到订单管理二.代码的实现2.1 pom文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:x原创 2020-11-08 00:15:51 · 574 阅读 · 1 评论