没有UserDetailsS​​ervice方法的Spring启动基本身份验证

时间:2017-09-06 18:51:37

标签: spring-boot spring-security basic-authentication

我想在我的应用程序上实现自定义基本身份验证,但我不想使用UserDetailsS​​ervice方法......

@Override
public UserDTO loadUserByEmail(String email) {
    UserDTO user = userMapper.usertoUserDTO(userRepository.findByEmail(email));

    if (user == null) {
        throw new UsernameNotFoundException(email);
    }

    return user;
}

因为我想使用自己的服务来检索用户。

之后它在我的回复中设置了发起者标题......有人可以帮助我吗?

我可以使用基本身份验证,还是需要使用jwt或类似的东西?

1 个答案:

答案 0 :(得分:0)

UserDetailsService只是一个接口,您应该使用自己的实现来加载用户并返回(可能是您自己的)UserDetails接口的实现,然后Spring将验证密码是否完成其余的工作。< / p>

  

之后它在我的回复中设置了发起者标题......有人可以帮助我吗?

即使实施自己的AuthenticationProvider也无济于事,因为您已经在上下文中没有ServletRequest个对象,但只有Authentication个详细信息。

为此,我相信您可能需要使用ServletFilter