Shiro的INI配置文件

一、INI文件简介

INI配置文件是一种key/value的键值对配置,分为[main]、[users]、[roles]、[urls]四个部分,每一个部分中的key不可重复,#号代表注释,shiro.ini文件默认在/WEB-INF/ 或classpath下,shiro会自动查找,INI配置文件相当于一个静态数据库。

二、四个部分 

1、[main]

这部分配置类对象,或设置属性等操作,内置了根对象,securityManager。

[main]
securityManager.属性=值
key=value
securityManager.对象属性=com.xxx.pojo.People  #后面值是字符串

peo=com.xxx.pojo.People
securityManager.对象属性=$peo        #出现$时才表示是引用对象

2、[users]

定义用户,密码及用户可以具有的角色.

[users]
用户名=密码,角色1,角色2     #角色部分可以省略.
zhangsan=zs
zhangsan=zs,role1,role2

3、[roles]

定义角色具有的权限

角色名=权限名,权限名
role1=user:insert,user:update
role2=insert,update
role3=user:*

4、[urls]

定义哪个控制器被哪个过滤器过滤

扫描二维码关注公众号,回复: 4796098 查看本文章
[urls]
控制器名称=过滤器名称
/login=authc
/**=anon

三、使用代码获取INI配置文件

public static void main(String[] args) {

		// 创建工厂
		Factory<SecurityManager> factory = new IniSecurityManagerFactory("classpath:shiro.ini");
		// 创建容器
		SecurityManager manager = factory.getInstance();
		SecurityUtils.setSecurityManager(manager);
		// 获取当前的subject
		Subject subject = SecurityUtils.getSubject();
        。。。。。。
        略
}

猜你喜欢

转载自blog.csdn.net/qq_40961980/article/details/85101954