4

这是春季安全表单登录的示例配置

<http auto-config="true" use-expressions="false">
      <form-login login-processing-url="/static/j_spring_security_check"
                  login-page="/login"
                  authentication-failure-url="/login?login_error=t"/>
  </http>

现在,如果我没有指定任何显式登录处理 URL,spring 将其假定为仅“/j_spring_security_check”。我找不到默认值和被覆盖的函数之间的任何类型的功能差异,并且发现 spring 可以无缝地处理更改。我试着做谷歌来了解我们什么时候应该覆盖它。没有一个答案让我满意。

那么我们何时以及为什么要覆盖默认的 login-processing-url 呢?最重要的是,当我们“必须”覆盖默认值时,是否有任何用例?

谢谢

4

1 回答 1

9

如果你想隐藏你正在使用 Spring Security 的事实,你应该覆盖login-processing-url类似“forms/login”的东西,以及用户名和密码表单参数。这有助于隐藏您用来保护网站的框架。

<form-login>标签是配置UsernamePasswordAuthenticationFilter的简写。此过滤器将仅由 中指定的 URL 调用,login-processing-url并将使用为username-parameter和设置的值password-parameter作为请求中的用户名和密码。

于 2013-05-03T13:13:23.597 回答