我已经使用intecept-url为我的项目配置了一个spring安全上下文,我能够对所有URL进行身份验证,但是当我通过URL身份验证时,没有发生任何ID。
<intercept-url pattern="/**" access="isAuthenticated()"/>
工作网址
http://localhost:8080/WEB/add-employee
http://localhost:8080/WEB/view-employee
不工作的网址
http://localhost:8080/WEB/edit-employee/1
http://localhost:8080/WEB/edit-employee/2
1和2是通过URL传递的ID,上述URL模式不起作用(这意味着当我通过URL传递ID时)
我在intercept-url中尝试了很多组合,但是我没有得到正确的结果。
<http use-expressions="true">
<intercept-url pattern="/**" access="isAuthenticated()"/> <!-- this means all URL in this app will be checked if user is authenticated -->
<!-- We will just use the built-in form login page in Spring -->
<form-login login-page="/" login-processing-url="/j_spring_security_check" default-target-url="/home" authentication-failure-url="/"/>
<logout logout-url="/logout" logout-success-url="/"/> <!-- the logout url we will use in JSP -->
</http>
答案 0 :(得分:1)
删除行<intercept-url pattern="/edit-employee/**" access="IS_AUTHENTICATED_ANONYMOUSLY"/>
以禁止匿名访问该网址。