【问题标题】:Spring boot basic authentication without UserDetailsService method没有 UserDetailsS​​ervice 方法的 Spring Boot 基本身份验证
【发布时间】:2018-02-15 08:50:53
【问题描述】:

我想在我的应用程序上实现自定义基本身份验证,但我不想使用 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 或类似的东西?

【问题讨论】:

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


    【解决方案1】:

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

    之后,它在我的回复中设置了授权标头...有人可以帮我吗?

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

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

    【讨论】:

      猜你喜欢
      • 2016-05-27
      • 2015-06-02
      • 2021-04-02
      • 2015-10-12
      • 2015-10-16
      • 1970-01-01
      • 2017-08-03
      • 2019-04-25
      • 2017-05-10
      相关资源
      最近更新 更多