添加shiro内置过滤器
时间: 2023-11-28 09:11:17 浏览: 112
在使用Shiro进行权限控制时,可以通过添加Shiro内置过滤器来实现对不同请求进行权限验证和访问控制。在配置Shiro的过程中,我们可以通过配置ShiroFilterFactoryBean来添加内置过滤器。
在Shiro的内置过滤器中,常用的有以下几种:
1. `anon`:匿名访问,允许所有用户访问,一般用于静态资源的放行。
2. `authc`:身份认证,要求用户已经登录才能访问,如果未登录,则跳转到登录页面进行认证。
3. `user`:用户认证通过或者记住我登录的都可以访问,一般用于一些需要登录后才能进行的操作。
4. `perms`:需要指定权限才能访问,例如`/admin`接口需要拥有`admin`权限才能访问。
5. `roles`:需要指定角色才能访问,例如`/user`接口需要拥有`user`角色才能访问。
6. `logout`:退出登录,执行`logout`操作后会跳转到登录页面。
配置Shiro内置过滤器的方法是在ShiroFilterFactoryBean的配置中使用`filterChainDefinitionMap`属性,通过键值对的方式将请求路径和对应的过滤器进行配置。例如:
```java
filterChainDefinitionMap.put("/static/**", "anon");
filterChainDefinitionMap.put("/login", "anon");
filterChainDefinitionMap.put("/admin/**", "authc, perms<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
#### 引用[.reference_title]
- *1* [springmvc+shiro自定义过滤器的实现代码](https://download.csdn.net/download/weixin_38559866/12755515)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* *4* [SpringBoot整合Shiro环境搭建与配置拦截器](https://blog.csdn.net/qq_43880100/article/details/127395422)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文