shiro注解@RequiresPermissions验证失败,后台抛出异常,什么好办法能让后台不出异常

shiro注解@RequiresPermissions验证失败,后台抛出异常,什么好办法能让后台不出异常

哑剧 发布于 2021-11-27 字数 114 浏览 777 回复 11

验证失败能转到相应的异常页面,在配置文件,配好了,

我要是后台也不报错的,controller里用是注解,

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(11

明媚如初 2021-12-01 11 楼

<entry key="/error/401" value="anon" /> 配置了,还是org.apache.shiro.authz.UnauthorizedException: Subject does not have permission [plat_manage_add]

2021-12-01 10 楼

回复
报错信息来看,是你配置了plat_manage_add权限,当没权限时,应该有个没权限的时候的跳转路径<property name="unauthorizedUrl" value="/error/401"/>

奢望 2021-12-01 9 楼

回复
<property name="unauthorizedUrl" value="/error/401"/>这个配置,我也配置了,还是一样,望大侠解惑

为你鎻心 2021-12-01 8 楼

filterchain里将/401配置为anon

半世蒼涼 2021-12-01 7 楼

是UnauthorizedException异常,虽然不影响程序执行,但想搞清楚怎么回事

苍暮颜 2021-12-01 6 楼

1:首先要确定是不是后台出错了。请求看看到底是什么异常?

2:异常是不是这个UnauthorizedException?

3:自己写个类实现它org.springframework.web.servlet.handler.SimpleMappingExceptionResolver

在resolveException打印异常或者debug调式看看。

终遇你 2021-12-01 5 楼

这面这段配置,我配置了,<prop key="org.apache.shiro.authz.UnauthorizedException">error/401</prop> 然后后台会报错subject没有相应的权限,照理说我上面这段配置了,后台不该在出现这类异常错误了啊!

只为守护你 2021-12-01 4 楼

反正springmvc和shiro集成,权限验证不通过是不会调到指定的/403,而是出现异常。

<prop key="org.apache.shiro.authz.UnauthorizedException">/403</prop>
</props>

这个/403是view-name也就是你的jsp视图路径,不是path。

泪冰清 2021-12-01 3 楼

如果权限验证不通过。

出现这个org.apache.shiro.authz.UnauthorizedException异常,

也只有在springmvc配置SimpleMappingExceptionResolver

<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="exceptionMappings">
<props>
<prop key="org.apache.shiro.authz.UnauthorizedException">/403</prop>
</props>
</property>
</bean> 

虐人心 2021-12-01 2 楼

spring-mvc配置文件配置了,转到401页面,但是后台还是会报错,subject没有权限,虽然不影响程序执行,但我想要是后台不出现这类错误,该怎么实现呢

平生欢 2021-12-01 1 楼

org.springframework.web.servlet.handler.SimpleMappingExceptionResolver

拦截异常。org.apache.shiro.authz.UnauthorizedException