【问题标题】:AccessDeniedException; Spring Security访问拒绝异常;春季安全
【发布时间】:2011-07-26 12:45:33
【问题描述】:

我正在使用 Spring Security 默认登录页面,如果我的用户根据角色和 url 访问了他不应该访问的页面,他会在屏幕上收到以下错误:

org.springframework.security.access.AccessDeniedException: 访问被拒绝登录

我怎样才能让它一些 Spring 进入默认登录,无论是否出现错误。请帮帮我

【问题讨论】:

    标签: java spring-mvc spring-security


    【解决方案1】:

    如文档Appendix B 中的<access-denied-handler> 元素中所述,您可以设置errorPage 属性以转发到自定义JSP。这可能是您的登录页面或您想要的任何其他页面。请记住,此时用户已经登录,因此(再次)将他们转发到登录页面可能会造成混淆。

    正如 Raghuram 建议的那样,您也可以自己实现 AccessDeniedHandler,但除非您真的需要,否则我会推迟这样做。

    【讨论】:

      【解决方案2】:

      我面前没有这些信息,但如果我没记错的话,当你设置 spring 安全性时,你可以给它 url 模式来应用安全性。听起来您的设置正在应用安全性的模式中包含登录页面。你需要确保它不是。回到 spring security doco,你应该能够解决这个问题。此外,弹簧原木通常非常擅长帮助处理这类事情。

      【讨论】:

      • 不,我没有把登录页面放在这就是为什么我认为它会进入春季登录页面但它不是
      【解决方案3】:

      您可能需要做的是覆盖 here 中记录的默认 AccessDeniedHandlerImpl。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-01-21
        • 2017-10-31
        • 2013-04-02
        • 1970-01-01
        • 2018-03-16
        • 2014-02-25
        • 2015-04-04
        相关资源
        最近更新 更多