shiro配置学习

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shiro配置学习相关的知识,希望对你有一定的参考价值。

一、shiro的配置

1、shiro的web过滤
实例化ShiroFilterFactoryBean
设置securityManager、loginUrl、unauthorizedUrl、sucessUrl、filters、filterChainDefinitions

技术分享

技术分享

2、securityManager安全管理器
配置realm、配置sessionManager属性(class:DefaultWebSessionManager)、cacheManager(暂时不了解,可选配置)

3、realm
设置realm属性(继承 AuthorizingRealm

登录可重写 doGetAuthenticationInfo(AuthenticationToken token) return  new SimpleAuthenticationInfo(token.getUsername(), token.getPassword(), getName());

授权方面可重写 doGetAuthorizationInfo(PrincipalCollection principals)  return  SimpleAuthorizationInfo info = new SimpleAuthorizationInfo();

SimpleAuthorizationInfo 通过addStringPermission(String) 设置用户权限(后台controller方法头上加  @RequiresPermissions("base:organization:button:edit"),前台 <shiro:hasPermission name="base:menu:button:add"></shiro:hasPermission> 

)
4、设置sessionManager(DefaultWebSessionManager)

globalSessionTimeout 登录过期时间

sessionIdCookieEnabled 是否启用sessionId的cookie(不启用不执行simpleCookie)

sessionDAO 暂时不懂

sessionIdCookie (SimpleCookie),可设置构造参数name属性,设置session名

  simpleCookie类 通过 addCookieHeader方法,根据name属性,生成请求头 name=sessionId

 









以上是关于shiro配置学习的主要内容,如果未能解决你的问题,请参考以下文章

Shiro学习

Shiro学习——认证与授权(ini文件配置与数据库配置方式)

Shiro学习与笔记

Shiro学习——认证与授权(ini文件配置与mysql方式)

shiro学习笔记_0300_jdbcRealm和认证策略

为 JDBC 连接配置 shiro.ini