shiro

SpringBoot集成Spring Security

限于喜欢 提交于 2020-08-05 02:50:19
1、Spring Security介绍 Spring security ,是一个强大的和高度可定制的身份验证和访问控制框架。它是确保基于Spring的应用程序的标准 ——来自官方参考手册 Spring security 和 shiro 一样,具有认证、授权、加密等用于权限管理的功能。和 shiro 不同的是, Spring security 拥有比 shiro 更丰富的功能,并且,对于 Springboot 而言, Spring Security 比 Shiro 更合适一些,因为都是 Spring 家族成员。今天,我们来为 SpringBoot 项目集成 Spring Security 。 本文所使用的版本: ​ SpringBoot : 2.2.6.RELEASE ​ Spring Security : 5.2.2.RELEASE 2、配置Spring Security 在 SpringBoot 中集成 Spring Security 很简单,只需要在pom.xml中添加下面代码就行: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> 这里可以不指定 Spring Security

shiro篇---开启常见的注解

喜夏-厌秋 提交于 2020-08-04 19:27:59
** **  shiro常见的注解: (注:建议将shiro注解放入controller,因为如果service层使用了spring的事物注解,那么shiro注解将无效,如果spring管控了 filter 还是 Interceptor,怎controller层无效 ,此时可以放在service层试试) ** @RequiresAuthentication:** 使用该注解标注的类,实例,方法在访问或调用时,当前Subject必须在当前session中已经过认证。 @RequiresGuest: 使用该注解标注的类,实例,方法在访问或调用时,当前Subject可以是“gust”身份,不需要经过认证或者在原先的session中存在记录。 @RequiresPermissions: 当前Subject需要拥有某些特定的权限时,才能执行被该注解标注的方法。如果当前Subject不具有这样的权限,则方法不会被执行。 @RequiresRoles: 当前Subject必须拥有所有指定的角色时,才能访问被该注解标注的方法。如果当天Subject不同时拥有所有指定角色,则方法不会执行还会抛出AuthorizationException异常。 ** @RequiresUser:** 当前Subject必须是应用的用户,才能访问或调用被该注解标注的类,实例,方法。 在application

shiro的认证、授权、会话、加密

北战南征 提交于 2020-08-04 17:50:05
shiro shiro是一个基于java的开源的安全管理框架,可以完成认证,授权,会话管理,加密,缓存功能。 为什么学习shiro 在java的世界中,安全管理框架有spring security和shiro。spring security主要依赖于spring,并且比较复杂,学习曲线较高。shiro比较简单,而且其比较独立,既可以javaSE中使用,也可以在javaEE中使用,并且在分布式集群的环境下也可以使用。 shiro的结构体系 Authentication认证:验证用户是否合法。==>就是验证登录; Authorization授权:授予谁具有访问某些资源的权限; SessionManagement:会话管理,用户登录后的用户信息通过SessionManagent进行管理,不管是在什么应用中 Cryphography:提供了一些常见的加密算法,使得在应用中可以很方便的实现数据安全。 WebSupport:提供web应用程序支持 Caching缓存:提供了对缓存的支持,支持多种缓存架构:如ehcache,还支持缓存数据库-redis Concurrency:支持多线程并发访问 Testing:测试 Run As:支持一个用户在允许的前提下使用另一个身份进行登录; RememberMe:记住我 Subject=身份+凭证====>用户名和密码【用户获取主体的信息

Springboot + Vue + shiro 实现前后端分离、权限控制

六眼飞鱼酱① 提交于 2020-08-04 17:02:35
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 本文总结自实习中对项目的重构。原先项目采用 Springboot+freemarker 模版,开发过程中觉得前端逻辑写的实在恶心,后端 Controller 层还必须返回 Freemarker 模版的 ModelAndView,逐渐有了前后端分离的想法,由于之前,没有接触过,主要参考的还是网上的一些博客教程等,初步完成了前后端分离,在此记录以备查阅。 一、前后端分离思想 前端从后端剥离,形成一个前端工程,前端只利用 Json 来和后端进行交互,后端不返回页面,只返回 Json 数据。前后端之间完全通过 public API 约定。 二、后端 Springboot Springboot 就不再赘述了,Controller 层返回 Json 数据。 @RequestMapping(value = "/add", method = RequestMethod.POST) @ResponseBody public JSONResult addClient(@RequestBody String param) { JSONObject jsonObject = JSON.parseObject(param); String task = jsonObject.getString(

fofa与xray的自动化批量扫描工具配置使用

青春壹個敷衍的年華 提交于 2020-08-04 09:34:51
昨天在 Secquan圈子社区 看到一篇文章 一款联合fofa与xray的自动化批量扫描工具 他的工作原理是:配置fofa语法的规则(写进配置文件f2Xconfig.yaml中),然后使用fofa接口搜索符合规则的网址,然后使用Xray的爬虫模块去批量检测。 我感觉这种批量的检测方式有一个缺点就是没有cookie,所以很多网页是没有权限获取到页面内容的。只不过你可以一边一边,让它自己跑 我今天尝试使用了这个联动方法,顺便写下来记录一下吧: 首先说一下我的运行环境: Windows10系统 Git 全都是使用github上打包好的.exe文件 我们需要下载这个工具: fofa2Xray 解压出来之后是这样子的: 分别是两个工具以及两个工具的配置文件: xray的配置文件配置方式我就不多说了,有 专门的网页 介绍过。对了Xray大家需要时常更新,上次的时候 加入了shiro反序列化漏洞检测POC,但是需要外连其他平台验证,这次更新的不需要外连了。 fofa2xray.exe的配置文件f2Xconfig.yaml中的选项简单介绍: fofa: email: 28****5241@qq.com //这里是一个坑,不能加大括号,直接写邮箱就可以 key: f*******************5f //32位API key 在 fofa个人中心 获取 # 固定查询语句

SpringBoot+Shiro实现权限控制

情到浓时终转凉″ 提交于 2020-08-04 09:16:30
一、Shiro简介 二、项目实现 2.1 数据库结构 2.2 SQL SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for menu -- ---------------------------- DROP TABLE IF EXISTS `menu`; CREATE TABLE `menu` ( `menu_id` int(32) NOT NULL AUTO_INCREMENT, `menu_ name` varchar(200) NOT NULL, `parent_id` int(32) NOT NULL DEFAULT '0', `url` varchar(250) NOT NULL DEFAULT '#', `menu_type` int(3) NOT NULL, `perms` varchar(250) NOT NULL, PRIMARY KEY (`menu_id`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8; -- ---------------------------- -- Records of menu -- ---------------------------- INSERT INTO

Tomcat Filter之动态注入

只谈情不闲聊 提交于 2020-07-29 06:41:24
前言 最近,看到好多不错的关于“无文件Webshell”的文章,对其中利用上下文动态的注入 Filter 的技术做了一下简单验证,写一下测试总结,不依赖任何框架,仅想学习一下tomcat的filter。 先放几篇大佬的文章: Tomcat中一种半通用回显方法 tomcat结合shiro无文件webshell的技术研究以及检测方法 Tomcat通用回显学习 基于全局储存的新思路 | Tomcat的一种通用回显方法研究 threedr3am/ysoserial Filter介绍 详细介绍略,简单记录一下我的理解: 过滤器(Filter):用来对指定的URL进行过滤处理,类似 .net core 里的中间件,例如登录验证过滤器可以用来限制资源的未授权访问; 过滤链(FilterChain):通过URL匹配动态将所有符合URL规则的过滤器共同组成一个过滤链,顺序有先后,类似 .net core 的管道,不过区别在于过滤链是单向的,管道是双向; 同Servlet,一般Filter的配置方式: web.xml @WebFilter修饰 Filter注册调用流程 新建一个登录验证的Filter: SessionFilter.java package com.reinject.MyFilter; import java.io.IOException; import javax.servlet

shiro框架了解

我的未来我决定 提交于 2020-07-28 10:38:36
shiro框架 1.shiro简介 Apache Shiro是Java的一个安全框架。功能强大,使用简单的Java安全框架,它为开发人员提供一个直观而全面的 认证,授权,加密 及 会话管理 的解决方案 2.shiro组成 Authentication :身份认证/登录,验证用户是不是拥有相应的身份; Authorization :授权,即权限验证,验证某个已认证的用户是否拥有某个权限; Session Manager :会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会话中; Cryptography :加密,保护数据的安全性,如密码加密存储到数据库,而不是明文存储; 3.shiro结构 3.1shiro外部结构 Subject :主体 SecurityManager :安全管理器 Realm :域 流程: 1、应用代码通过Subject来进行认证和授权,而Subject又委托给SecurityManager; 2、我们需要给Shiro的SecurityManager注入Realm,从而让SecurityManager能得到合法的用户及其 权限进行判断。 3.1shiro内部结构 Subject :主体 SecurityManager :相当于SpringMVC中的DispatcherServlet,它管理着所有Subject、且负责进行认证和授权、及会话

思维导图视频代码揭秘shiro加密

梦想的初衷 提交于 2020-07-27 10:52:56
思维导图、视频、代码携手揭秘shiro,干货多多,趣味多多! 目录 思维导图 视频 代码 思维导图 视频 链接:https://pan.baidu.com/s/1OwkeHBYbMft3qNB247Wehw 提取码:cw8k 链接:https://pan.baidu.com/s/1nESap9EsGCwpTEt3le5cfA 提取码:7mi0 链接:https://pan.baidu.com/s/1vyx8emRPBykcmtypZWB-4g 提取码:pu96 代码 https://gitee.com/cakin24/shirodemo/tree/master/shiro-example-chapter5 来源: oschina 链接: https://my.oschina.net/u/4361003/blog/4287325

思维导图视频代码揭秘shiro 关键类和接口

别说谁变了你拦得住时间么 提交于 2020-07-27 09:28:30
思维导图、视频、代码携手揭秘shiro,干货多多,趣味多多! 目录 思维导图 视频 代码 思维导图 视频 链接:https://pan.baidu.com/s/1LFkTMswUmx9KMBpVCBJaPQ 提取码:ioxx 链接:https://pan.baidu.com/s/1-xNx3atSyQyBtEDh1Of70g 提取码:7tw0 代码 https://gitee.com/cakin24/shirodemo/tree/master/shiro-example-chapter6 来源: oschina 链接: https://my.oschina.net/u/4264305/blog/4288287