【发布时间】:2012-05-08 14:18:29
【问题描述】:
是否可以通过检查 Spring Security 中现有的 HttpSession 来验证用户身份?我希望用户在一个 URL (http://example.com/auth) 上通过 CAS 进行身份验证,而不是其他 URL。例如,如果他们直接访问http://example.com/content,那么如果他们尚未登录 CAS,我想检查 HttpSession 并返回 401 Unauthorized 代码。如果他们已经进入 /auth 页面并登录,那么进入 /content 将返回内容。这样做的主要原因是避免 CAS 在身份验证期间导致的任何重定向。
我是 Spring Security 的新手,不知道我是否需要自定义 AuthenticationManager、AuthenticationEntryPoint、两者或其他东西。 AuthenticationManager 无法让我访问 HttpSession,而 AuthenticationEntryPoint 似乎不是实现此功能的正确位置。
有什么想法吗?
【问题讨论】:
标签: java spring spring-mvc spring-security