会话已过期,但我仍然可以使用Spring Shiro访问阻止网址

时间:2017-11-02 15:17:34

标签: spring-boot shiro

当会话到期时,我无法在会话中阅读信息。但我仍然可以访问我的阻止网址。然后我只能通过访问/注销后再次工作。发生了什么?当会话到期时我需要shiro块,我该怎么办?

Map<String, String> filterChainDefinitionMap = new LinkedHashMap<String, String>();

    filterChainDefinitionMap.put("/favicon.ico", "anon");
    filterChainDefinitionMap.put("/images/**", "anon");
    filterChainDefinitionMap.put("/js/**", "anon");
    filterChainDefinitionMap.put("/css/**", "anon");
    filterChainDefinitionMap.put("/fonts/**", "anon");

    filterChainDefinitionMap.put("/logout", "logout");

    filterChainDefinitionMap.put("/login", "anon");
    filterChainDefinitionMap.put("/register", "anon");
    filterChainDefinitionMap.put("/admin/**", "roles[admin],perms[admin]");
    filterChainDefinitionMap.put("/confirmorder/**", "authc");

    shiroFilterFactoryBean.setLoginUrl("/login");

    shiroFilterFactoryBean.setSuccessUrl("/index");

这是我的shiroconfig

1 个答案:

答案 0 :(得分:0)

我猜测,当会话过期时,您可以访问除/confirmorder/**之外的任何其他网址。您可以将authc添加到/admin/**路线,然后就可以全部设置。