为表单登录创建自定义身份验证入口点

时间:2017-05-13 00:27:28

标签: spring spring-security

我有一个表单登录入口点,目前定义如下:

<form-login login-page="/spring/login" 
            login-processing-url="/spring/login"
            authentication-failure-url="/spring/loginfail" 
            default-target-url="/spring/loginsuccess" 
            always-use-default-target="true" />

这很好但我想将其转换为自定义身份验证入口点。我有一个扩展LoginUrlAuthenticationEntryPoint的类,在需要身份验证时会调用它。

我的问题是:如何支持使用此模式发布用户名/密码?

当我删除表单登录块时,我得到一个不支持POST的错误。我想因为我无法再定义login-processing-url,我在哪里发布凭据以便Spring Security可以执行身份验证?

1 个答案:

答案 0 :(得分:0)

我想我想出来了。我误解了它是如何工作的。表单登录AuthenticationEntryPoint应该是应用程序中的单个入口点。映射到其他模式的AuthenticationEntryPoints应该简单地重定向到映射到包含表单登录入口点的入口点的URL,如果需要表单登录,否则我们可以不同地处理它。