我需要为Spring Security编写一种新的身份验证方法,以获得罕见的身份验证协议。我可以编写一个支持新系统的AuthenticationProvider
,但我需要在Authentication
对象上传递适当的信息。我需要实现什么对象来处理自定义Authentication
对象的实例化?
答案 0 :(得分:2)
通常它将是一个过滤器(特别是AbstractAuthenticationProcessingFilter的子类)。
查看UsernamePasswordAuthenticationFilter attemptAuthentication()
方法的代码,该方法是处理通常用户名/密码身份验证用例的过滤器。
答案 1 :(得分:-1)
我建议扩展AbstractAuthenticationToken以创建可以传递给提供者的令牌。您还需要覆盖supports
的{{1}}方法以接受此令牌。