IniRealm配置文件数据源

IniRealm是配置文件数据源,一般就是ini文件

创建user.ini

[users]
root=123456,admin
[roles]
admin=user:delete

详细配置可以看shiro.ini配置详解

securityManager进行用户验证

//test.java
public class IniRealmTest {
    @Test
    public void testIniRealm(){
        //1、创建SecurityManager对象
        DefaultSecurityManager securityManager = new DefaultSecurityManager();

        //2、创建IniRealm数据源(相当于用户名、密码、权限配置文件)
        IniRealm realm = new IniRealm("classpath:user.ini");

        //3、设置数据源
        securityManager.setRealm(realm);

        SecurityUtils.setSecurityManager(securityManager);

        Subject subject = SecurityUtils.getSubject();

        AuthenticationToken token = new UsernamePasswordToken("root", "123", "admin");
        subject.login(token);

        System.out.println();
        //验证该用户是否有该角色
        subject.checkRole("admin");
        //验证该用户是否有该权限
        subject.checkPermission("user:delete");
    }
}

版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。