任何人都可以帮我了解如何在自定义登录 jsp 文件中添加更多字段吗?默认值为“j_username”和“j_password”。如果我想添加更多字段 ie 并想在我CustomAuthenticationProvider
的扩展类中获取它怎么办AbstractUserDetailsAuthenticationProvider
?如果有任何资源或链接,请告诉我。
问问题
1473 次
1 回答
7
引用官方常见问题解答:
1.1。我需要使用更多信息登录,而不仅仅是用户名。如何添加对额外登录字段(例如公司名称)的支持?
这个问题在 Spring Security 论坛中反复出现,因此您可以通过搜索档案(或通过 google)在那里找到更多信息。
提交的登录信息由
UsernamePasswordAuthenticationFilter
. 您将需要自定义此类以处理额外的数据字段。一种选择是使用您自己定制的身份验证令牌类(而不是标准的UsernamePasswordAuthenticationToken
),另一种是简单地将额外的字段与用户名连接起来(例如,使用“:
”作为分隔符)并将它们传递到 的用户名属性中UsernamePasswordAuthenticationToken
。您还需要自定义实际的身份验证过程。例如,如果您使用自定义身份验证令牌类,则必须编写一个
AuthenticationProvider
来处理它(或扩展标准DaoAuthenticationProvider
)。如果您已连接字段,则可以实现自己的字段,UserDetailsService
将它们拆分并加载适当的用户数据以进行身份验证。
于 2012-05-13T11:42:51.053 回答