Я в основном скопировал учебник для использования Spring Web Security с Spring Boot и Thymeleaf. https://spring.io/guides/gs/securing-web/
Для конфигурации:
@Configuration
public class WebConfig implements WebMvcConfigurer {
public void addViewControllers(ViewControllerRegistry registry) {
registry.addViewController("/login").setViewName("login");
registry.addViewController("/").setViewName("home");
}}
Для безопасности в public class WebSec extends WebSecurityConfigurerAdapter
:
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/", "/home").permitAll()
.antMatchers("/users*").hasRole("ADMIN")
.antMatchers("/users/*").hasRole("ADMIN")
.anyRequest().authenticated()
.and()
.formLogin().loginPage("/login").permitAll()
.and()
.logout().permitAll();
}
Все html-файлы находятся под
/src/main/resources/templates
Теперь home.html
найден красиво. Однако всякий раз, когда что-либо требует страницу входа, login.html
в той же папке не найден, и ошибка:
Error resolving template "login", template might not exist or might not be accessible by any of the configured Template Resolvers
Я не уверен, что делать дальше.