java - Spring security UserDetails服务配置

标签 java spring spring-security spring-boot

我向我的 Spring 项目添加了自定义 UserDetails 和 UserDetailsS​​ervice 类,并希望将它们与 httpbasic 结合使用。如何配置 spring 使用我的自定义类?

我的 application.yml 如下所示:

security:
  basic:
    enabled: false
  require_ssl: false
  enable_csrf: false
  ignored:
    - /register/**
    - /acitivate/**
  headers:
    hsts: domain
  sessions: stateless

用户详细信息服务:

@Service
@Transactional(readOnly = true)
public class UserDetailsServiceAdapter implements UserDetailsService {

    @Override
    public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
      //...
    }

}

我是否必须定义 Bean,或者是否可以在我的 application.yml 中设置它?

最佳答案

您不必在 XML 中为“UserDetails”定义 bean。您的配置文件位于 YAML 中这一事实并没有使事情有任何不同。

所以在你的情况下,你可以从中派生(扩展它),就可以了。请记住在您的实现中调用“super.loadUserByUsername()”,并且在您使用它的类中您将必须向下转换。

关于java - Spring security UserDetails服务配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27063121/

相关文章:

Spring Security 由 : org. springframework.security.config.annotation.AlreadyBuiltException 引起:此对象已构建

java - Spring Autowiring 调用错误的构造函数

java - Spring Security - 在 Controller 中获取登录用户 - 礼貌

spring-security - Spring Oauth2 - 重新加载主体

java - com.sun.mirror.apt API

java - 从两种类型的 Enum 之一实例化 EnumSet

java - Jruby、JDBC、Netezza

java - 使用 Thymeleaf 中的变量一次设置多个标签属性

spring - ROLE_USER 和 ADMIN 对 URL 的访问限制

java - Apache CXF 初始化上的调用方法