RoleResourceConfiguration.java 1.4 KB

1234567891011121314151617181920212223242526
  1. package com.yaozhitech.spring5.config;
  2. import org.apache.shiro.spring.web.config.DefaultShiroFilterChainDefinition;
  3. import org.apache.shiro.spring.web.config.ShiroFilterChainDefinition;
  4. import org.springframework.context.annotation.Configuration;
  5. @Configuration
  6. public class RoleResourceConfiguration extends ShiroConfiguration{
  7. @Override
  8. public ShiroFilterChainDefinition shiroFilterChainDefinition() {
  9. DefaultShiroFilterChainDefinition chainDefinition = new DefaultShiroFilterChainDefinition();
  10. // chainDefinition.addPathDefinition("/login", "noSessionCreation,anon"); //login不做认证,noSessionCreation的作用是用户在操作session时会抛异常
  11. // chainDefinition.addPathDefinition("/logout", "noSessionCreation,authcToken[permissive]"); //做用户认证,permissive参数的作用是当token无效时也允许请求访问,不会返回鉴权未通过的错误
  12. // chainDefinition.addPathDefinition("/image/**", "anon"); ,anyRole[admin,manager]
  13. // chainDefinition.addPathDefinition("/**", "noSessionCreation,authcToken"); // 只允许admin或manager角色的用户访问
  14. // chainDefinition.addPathDefinition("/article/list", "noSessionCreation,authc");
  15. // chainDefinition.addPathDefinition("/article/*", "noSessionCreation,authc[permissive]");
  16. // chainDefinition.addPathDefinition("/**", "noSessionCreation,authc"); // 默认进行用户鉴权
  17. return chainDefinition;
  18. }
  19. }