【什么是INI文件?】

INI 全称:Initialization File

初始文件 Window系统文件扩展名

Shiro 使用时可以连接数据库,也可以不连接数据库。

当不使用数据库时,需要配置Shiro.ini文件来存储静态数据

【内容组成部分】

一、[main] 定义全局变量

1、内置SecurityManager对象

2、操作内置对象时,在[main]中进行配置

[main]
#属性=值
securityManager.property=value myObject = cn.echo42 #对象属性=值
securityManager.objectProperty=$myObject

可以类比为XML文件配置的:

<bean id="myObject" class="cn.echo42" />

<bean id="securityManager" >
<property name="对象属性" value="$myObject"/>
</bean>

二、[users] 定义账号信息

用户信息:名称、密码、对应角色

[users]

# key表示用户名 value表示密码
admin=123456 # 如果再密码后面追加了信息,则追加的信息表示我们用户具备的多个角色
user=133698,role01,role02

三、[roles] 定义角色信息

即一个角色具备什么样的权限:

[roles]

role01=权限01,权限02,...

role02=权限N1,权限N2, ...

四、[urls] 定义内置Url资源

1、Authc 表示必须认证才允许访问的路径

2、Anno 表示无需认证,随意访问的路径

3、User 表示用户必须登陆才允许方法的路径

4、Logout 表示注销的路径

[urls]

# url地址 = 内置filter & 自定义filter
# 访问时出现/login的url必须去认证,支持authc对应的filter
/login=authc # 任何的url都不需要认证
/**=anon # 所有的内容必须保证用户已经登陆
/**=user # url abc 访问时必须保证用户具有role1和role2角色
/abc=roles["role1,role2"]

其实就是我们在JavaWeb中的一个个过滤器,只是Shiro封装成了认证组件

【Shiro】02 shiro.ini文件分析的更多相关文章

  1. Shiro入门 - 通过ini文件进行授权

    shiro-permission.ini #用户 [users] #admin的密码是111111,此用户具有role1.role2两个角色 admin=111111,role1,role2 zhan ...

  2. Shiro入门 - 通过ini文件进行认证

    导入依赖 <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core ...

  3. shiro解析ini文件

    来吧,看看shiro是怎么解析ini文件的,这里假设ini文件在classpath下,名字叫做shiro.ini Factory<org.apache.shiro.mgt.SecurityMan ...

  4. shiro认证流程源码分析--练气初期

    写在前面 在上一篇文章当中,我们通过一个简单的例子,简单地认识了一下shiro.在这篇文章当中,我们将通过阅读源码的方式了解shiro的认证流程. 建议大家边读文章边动手调试代码,这样效果会更好. 认 ...

  5. shiro<1.2.4反序列化分析

    0x01.环境搭建 下载地址:https://codeload.github.com/apache/shiro/zip/shiro-root-1.2.4 环境:Tomcat 8.5.27 + idea ...

  6. (一)Shiro笔记——简介、 架构分析

    1. Shiro是什么 Apache Shiro是一个强大灵活的开源安全框架,可以完全处理身份验证,授权,企业会话管理和加密. Apache Shiro的首要目标是易于使用和理解. 安全有时可能非常复 ...

  7. Spring整合Shiro 权限 角色 用户关系分析

    Spring整合Shiro 权限 角色 用户关系分析 作者 : Stanley 罗昊 [转载请注明出处和署名,谢谢!] 前置内容 之前我们学习了,使用注解的方式去完成权限的控制,当然,也是静态的,也就 ...

  8. CVE-2020-17523:Apache Shiro身份认证绕过漏洞分析

    0x01 Apache Shiro Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理. 0x02 漏洞简介 2021年2月1日,Apache Shiro官 ...

  9. 【shiro】shiro学习笔记1 - 初识shiro

    [TOC] 认证流程 st=>start: Start e=>end: End op1=>operation: 构造SecurityManager环境 op2=>operati ...

  10. 蓝屏 Dump文件分析方法

    WinDbg使用有点麻烦,还要符号表什么的.试了下,感觉显示很乱,分析的也不够全面... 试试其他的吧!今天电脑蓝屏了,就使用其dump文件测试,如下: 1.首先,最详细的,要属Osr Online这 ...

随机推荐

  1. react自定义导航组件 路由参数

    为何需要自定义导航? 因为在项目中往往不是所有的声明式导航都是需要a标签完成,有时候可能需要别的标签,此时如果在需要的地方去写编程式导航就会有代码重复可能性,就在对于公共代码进行提取. 思路: 定义一 ...

  2. [Qt开发]当我们在开发兼容高分辨率和高缩放比、高DPI屏幕的软件时,我们在谈论什么。

    前言 最近在开发有关高分辨率屏幕的软件,还是做了不少尝试的,当然我们也去网上查了不少资料,但是网上的资料也很零碎,说不明白,这样的话我就做个简单的总结,希望看到这的你可以一次解决你有关不同分辨率下的所 ...

  3. C++中 符号的优先级

    符号 运算顺序 :: 从左至右 a++ a-- type() type{} a() a[] . -> 从左至右 ! ~ ++a --a +a -a (type) sizeof &a *a ...

  4. freemarker模板替换生成word

    工具类 public static void createWord(Map<String,Object> dataMap, String templateName, String file ...

  5. Spring扩展——@Import注解

    引言 在Spring中有许多Enable开头的注解,比如以下常见注解 @EnableTransactionManagement @EanbleAsync @EnableCache @EnableAsp ...

  6. 掉了两根头发后,我悟了!vue3的scoped原来是这样避免样式污染(上)

    前言 众所周知,在vue中使用scoped可以避免父组件的样式渗透到子组件中.使用了scoped后会给html增加自定义属性data-v-x,同时会给组件内CSS选择器添加对应的属性选择器[data- ...

  7. dot net core使用BackgroundService运行一个后台服务

    不管是在控制台程序还是asp.net core程序中,我们经常会有用到一个需要长时间运行的后台任务的需求.通常最直觉的方式是使用Thread实例来新建一个线程,但是这样需要自行管理线程的启动和停止. ...

  8. vue - ElementUI

    关于ElementUI最好还是通过实践项目来做,来熟悉. 这只是一些ElementUI的注意事项,至此vue2的内容真的全部完结,后面将继续vue3的内容更新. 一.完整引入 一般提及什么什么UI会有 ...

  9. 虚拟 DOM 实现原理?

    虚拟 DOM 的实现原理主要包括以下 3 部分: 用 JavaScript 对象模拟真实 DOM 树,对真实 DOM 进行抽象: diff 算法 - 比较两棵虚拟 DOM 树的差异: pach 算法 ...

  10. Java 代码实现POST/GET请求

    方式一 package com.cyb.util; import java.io.BufferedReader; import java.io.DataOutputStream; import jav ...