4、Shiro之IniRealm以及用户登录认证,角色认证,权限认证

1、我们在项目test文件夹下面新建resourse文件夹并将她设置为资源文件夹:

2、在resourse文件夹下面新建user.ini文件

user.ini文件里面声明一个用户:

先写一个用户标签[user]

然后添加一个用户:houru密码:miyue

认证测试:

新建一个测试类:

测试类代码:

package com.shiro.shiroframe;

import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.shiro.mgt.DefaultSecurityManager;
import org.apache.shiro.realm.text.IniRealm;
import org.apache.shiro.subject.Subject;
import org.junit.jupiter.api.Test;

public class IniRelamTest {
@Test
    public void InirelamTest(){
    IniRealm iniRealm=new IniRealm("classpath:user.ini");
    DefaultSecurityManager defaultSecurityManager=new DefaultSecurityManager();
    defaultSecurityManager.setRealm(iniRealm);
    SecurityUtils.setSecurityManager(defaultSecurityManager);
    Subject subject=SecurityUtils.getSubject();
    UsernamePasswordToken usernamePasswordToken=new UsernamePasswordToken("houru","miyue");
    subject.login(usernamePasswordToken);
    System.err.println(subject.isAuthenticated());
}
}

注意,上面的一切操作只不过是把用户信息存在一个资源文件里,然后使用IniRealm读取,这样理解就很简单

 授权测试:

首先修改ini文件:

 此时java代码追加角色验证和权限验证:

    //用户角色验证
    subject.checkRole("admin");
    //用户权限验证
    subject.checkPermission("user:delete");

如果验证通过,代码执行不报错。否则报错

 

转载于:https://www.cnblogs.com/luzhanshi/p/11024433.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值