Shiro的认证与授权过程的401自定义信息返回格式

spring boot与shiro整合的很多这个不用多赘述,主要分享下过滤器这块

shiro中的部分过滤器

anon过滤器:用于处理匿名访问,即不需要身份验证的URL。
authc过滤器:用于进行身份验证,如果身份验证失败,将会返回一个HTTP 401 Unauthorized响应。
authcBasic过滤器:用于进行HTTP基本身份验证,如果身份验证失败,将会返回一个HTTP 401 Unauthorized响应。
authcBearer过滤器:用于进行OAuth2授权,如果授权失败,将会返回一个HTTP 401 Unauthorized响应。
perms过滤器:用于检查用户是否具有指定权限,如果用户没有指定权限,将会返回一个HTTP 403 Forbidden响应。
port过滤器:用于检查请求的端口是否与配置文件中指定的端口匹配,如果不匹配,将会返回一个HTTP 403 Forbidden响应。
rest过滤器:用于处理RESTful请求,例如GET、POST、PUT、DELETE等。
ssl过滤器:用于检查请求是否使用安全连接,如果不使用安全连接,将会返回一个HTTP 403 Forbidden响应。
user过滤器:用于检查用户是否已经登录,如果用户未登录,将会返回一个HTTP 401 Unauthorized响应

上述过滤器各自对应了一个具体的实现类,需要的找对应的过滤器

anon->AnonymousFilter
authc->FormAuthenticationFilter
authcBasic->BasicHttpAuthenticationFilter
roles->RolesAuthorizationFilter

正常流程会在ShiroConfig中配置下部分代码

	@Bean
    public CustomHttpAuthenticationFilter customHttpAuthenticationFilter(){
   
        return new CustomHttpAuthenticationFilter();
    }
    @Bean
    public CustomRolesAuthenticationFilter customRolesAuthenticationFilter(){
   
        return new CustomRolesAuthenticationFilter();
    }
    
	@Bean
    public ShiroFilterFactoryBean shiroFilterFactoryBean(DefaultWebSecurityManager defaultWebSecurityManager) {
   
        ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
        shiroFilterFactoryBean.setSecurityManager(defaultWebSecurityManager)
  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值