使用SSM+Shiro处理全局权限异常,跳转到指定页面

Shiro是基于用户、角色、权限认证的安全框架。使用Shiro对Web项目进行权限管理,由Shiro的过滤器,对请求是否允许匿名、是否有Roles角色,是否有Permissions权限来进行拦截。

当使用@RequiresPermissions()@RequiresRoles()注解方式进行权限控制,该方式没有权限或者没有角色时不会自动跳转到没有权限的页面,而是直接把异常抛到页面了,所以我们要配置一个全局的异常处理。

由于使用的是SSM框架,因此在spring-mvc.xml配置文件中,进行如下配置,配置全局异常捕获,当Shiro框架抛出UnauthorizedException异常时,跳转到403权限不足提示页面。

    <!-- shiro全局异常处理 -->  
	<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"> 
	  <property name="exceptionMappings"> 
	    <props> 
	      <prop key="org.apache.shiro.authz.UnauthorizedException">redirect:/403.jsp</prop> 
	    </props> 
	  </property> 
	</bean>

参考:https://www.jb51.net/article/125215.htm

猜你喜欢

转载自blog.csdn.net/Cai181191/article/details/99693820
今日推荐