我正在使用Spring Security 3.1.x并尝试实现以下方案:
我的Spring Security配置为:
<http use-expressions="true"> <intercept-url pattern="/admin/full_auth_only.html" access="isFullyAuthenticated()" /> <form-login login-page="/login.html" default-target-url="/authenticated.html" /> <logout /> <remember-me key="someAppKey" /> </http>
并且我尝试添加:
<access-denied-handler error-page="/login.html" />
但是,现在的问题是,当访问该页面时,登录表单确实提示我,只有URL与登录不对应;而是经过完全认证的页面的URL:
http://localhost:8080/spring-security/admin/full_auth_only.html
这将中断身份验证过程,当尝试访问(无效)URL时,身份验证过程将失败:http://localhost:8080/spring-security/admin/j_spring_security_check
应该是:http://localhost:8080/spring-security/j_spring_security_check
对此提供了任何帮助,我很感激-我认为用例非常普遍,因此我宁愿使用名称空间支持,也不要朝着自定义方向发展。
谢谢。欧根
我正在使用Spring Security 3.1.x并尝试实现以下方案:使用isFullyAuthenticated()保护页面,当前用户仅通过记住我进行身份验证,因此未完全通过身份验证...
我无法复制您的Spring Security版本3.1.3.RELEASE
的问题。您使用哪个版本?
1。如果有welcome-file-list
,请删除任何web.xml
。
听起来好像没有设置cookie,并且发送的以下请求都被视为没有会话ID的第一个请求,因此即使您已经登录,spring每次都要求登录。