-
springmvc.xml查看全部
-
shiro整体架构
查看全部 -
内置过滤器
查看全部 -
认证过程图
查看全部 -
整体架构图
查看全部 -
SUB 主体
Authenticator 认证器(登陆)
Authorizer 授权器(访问权限)
SessionManager Shiro自己的Session不依赖于Web
SessionDAO Session操作增删改查
CacheManager 缓存操作(缓存角色和权限)
Reaims Shiro和数据库直接的一个桥梁
查看全部 -
创建SecurityMananger ->主题授权->SecurityManager授权->Authorizer授权->Realm获取角色权限数据
查看全部 -
创建SecurutyManager对象-》主题提交认证 -》SecurityManager认证-》Authenticator认证-》realm验证
查看全部 -
package com.imooc.test; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.mgt.DefaultSecurityManager; import org.apache.shiro.realm.SimpleAccountRealm; import org.apache.shiro.subject.Subject; import org.junit.Before; import org.junit.Test; /** * 测试认证 */ public class AutnenticationTest { SimpleAccountRealm simpleAccountRealm = new SimpleAccountRealm(); @Before public void addUser(){ simpleAccountRealm.addAccount("dulu","070525"); } @Test public void testAuthentication(){ // 1 构建SecurityManager环境 // SecurityManager用 authenticate 进行认证 按住ctrl键鼠标双击 DefaultSecurityManager DefaultSecurityManager defaultSecurityManager = new DefaultSecurityManager(); defaultSecurityManager.setRealm(simpleAccountRealm); //注意这一行,视频中没有 // 2 主体提交认证请求 SecurityUtils.setSecurityManager(defaultSecurityManager); // 设置环境 Subject subject = SecurityUtils.getSubject(); // 获得主体 这里的 Subject要引入 import org.apache.shiro.SecurityUtils; UsernamePasswordToken token = new UsernamePasswordToken("dulu","070525"); // 这里可以写参数,也可以不写 subject.login(token); // 输出是否认证 System.out.println("isAuthenticated:" + subject.isAuthenticated()); // 登出 subject.logout(); } }
查看全部 -
Shiro整体架构
查看全部 -
需要桥的代码
查看全部 -
jdbcReam如果要查询权限,需要设置setPermissionsLookupEnabled(true)才能查询权限
查看全部 -
使用自定义JDBC
查看全部 -
JDBC Realm
查看全部 -
jdbcRealm查询权限开关查看全部
举报
0/150
提交
取消