Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法自动连线。没有';AuthenticationProvider';找到的类型_Java_Spring_Spring Boot_Kotlin_Spring Security - Fatal编程技术网

Java 无法自动连线。没有';AuthenticationProvider';找到的类型

Java 无法自动连线。没有';AuthenticationProvider';找到的类型,java,spring,spring-boot,kotlin,spring-security,Java,Spring,Spring Boot,Kotlin,Spring Security,我无法在SecurityConfig类中自动连接AuthenticationProvider Spring framework实例。这很奇怪,因为我已经包含了必要的导入,并且UserDetailsService(另一个Spring框架类)可以自动连接而没有任何问题。这是我的代码: import org.springframework.beans.factory.annotation.Autowired import org.springframework.context.annotation.B

我无法在SecurityConfig类中自动连接AuthenticationProvider Spring framework实例。这很奇怪,因为我已经包含了必要的导入,并且UserDetailsService(另一个Spring框架类)可以自动连接而没有任何问题。这是我的代码:

import org.springframework.beans.factory.annotation.Autowired
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
import org.springframework.security.authentication.AuthenticationProvider
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder
import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity
import org.springframework.security.config.annotation.web.builders.HttpSecurity
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter
import org.springframework.security.core.userdetails.UserDetailsService
import org.springframework.security.web.authentication.RememberMeServices
import org.springframework.security.web.authentication.rememberme.TokenBasedRememberMeServices

@Configuration
@EnableGlobalMethodSecurity(securedEnabled = true, prePostEnabled = true)
class SecurityConfig : WebSecurityConfigurerAdapter() {
    companion object {
        private const val REMEMBER_ME_KEY = "basdrwerdadev$#@safasfewrahl"
    }

    @Autowired private lateinit var authenticationProvider: AuthenticationProvider
    @Autowired private lateinit var userDetailsService: UserDetailsService
    ...

也许我失去了一种依赖?我已经添加了Spring安全依赖项,我要检查的前两件事是:
i) 您的自定义身份验证提供程序是否注释为服务/组件(即spring是否可以查看和管理它?)

ii)它是否扩展了spring的AuthenticationManager接口?

我的身份验证提供程序不是自定义的。我使用的是Spring提供的一个接口。Spring的AuthenticationProvider是Spring提供的一个接口,您可以使用自己的自定义逻辑实现它。我会尝试将AuthenticationProvider更改为spring提供的各种实现中的任何一种。如果可行,您可以选择最适合您的项目的接口,甚至可以自己实现该接口