问题描述
如何根据自己的需要配置 spring-boot-starter-security?
(我在 kotlin 中使用 spring)
我的意思是,我有这个配置文件,但似乎spring容器只是忽略了。
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
import org.springframework.security.config.annotation.web.builders.HttpSecurity
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
import java.lang.Exception
@Configuration
@EnableWebSecurity
class WebSecurity : WebSecurityConfigurerAdapter() {
@Bean
public fun encriptator () : BCryptPasswordEncoder{
return BCryptPasswordEncoder();
}
@Throws(Exception::class)
override fun configure(http: HttpSecurity) {
http .authorizeRequests()
.antMatchers("/","/home").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.permitAll()
.and()
.logout()
.permitAll();
}
}
总是将我重定向到 /login。
并且文件位置与app.kt处于同一级别
解决方法
我得到了解决方案,我的问题是缺少 package 关键字,所以我将配置文件移动到一个名为 config 的包中,现在它可以工作了