Java 在SpringSecurity中覆盖默认登录处理url的用例是什么
下面是spring安全表单登录的示例配置Java 在SpringSecurity中覆盖默认登录处理url的用例是什么,java,spring,jakarta-ee,spring-mvc,spring-security,Java,Spring,Jakarta Ee,Spring Mvc,Spring Security,下面是spring安全表单登录的示例配置 <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_
<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\U spring\U security\U check”。我找不到默认值和重写值之间有任何类型的功能差异,发现spring可以无缝地处理更改。我试着用谷歌来理解我们什么时候应该覆盖它。没有一个答案使我满意
那么,何时以及为什么我们应该覆盖默认的登录处理url?最重要的是,当我们“必须”覆盖默认值时,是否存在任何用例
谢谢如果您想隐藏您正在使用Spring Security的事实,您应该将
登录处理url
重写为类似“forms/login”的内容,以及用户名和密码表单参数。这有助于隐藏用于保护站点安全的框架
标记是配置的简写。此筛选器将仅由登录处理URL
中指定的URL调用,并将使用用户名参数
和密码参数
设置的值作为请求中的用户名和密码。这是我在搜索后找到的。但我不太确定这是否是唯一的用例。你知道Spring是如何处理重写的吗?我已经用更多的细节更新了答案。最后它只是一个java过滤器,formlogin
配置bean属性。感谢Jay提供的详细信息。我很困惑,因为我无法理解通过简单的“/j_-spring\u-security\u-check”到“/static/j_-spring\u-security\u-check”可以实现什么隐藏?在《行动中的春天》中,我将此视为一个例子,如果只是为了隐藏,我无法理解这有什么意义我还没有读完那本书,但我确实有一本。查看注销部分,他们还更改了注销URL和状态:“但是为了避免[注销URL]与我们设置DispatcherServlet的方式发生冲突,我们需要像对登录表单那样覆盖过滤器的URL。”所以我猜他们只是为了不与MVC配置冲突而对其进行了更改。太好了。谢谢Jay。我自己做了一些研究,发现信息隐藏确实是唯一的用例。