我正在开发vaadin/spring应用程序。对于登录,建议使用Spring Security 。在文档[1]之后,我设置了spring security。现在我正在使用 InMemoryUserDetailsManager
在应用程序中使用硬编码用户名/密码。
@Bean
@Override
public UserDetailsService userDetailsService() {
UserDetails user =
User.withUsername("user")
.password("{noop}pass")
.roles("USER")
.build();
return new InMemoryUserDetailsManager(user);
}
一切都与此设置工作,但对于日志,我调用了一个外部函数,返回一个布尔值与提供的用户名/密码对和非内置管理器允许这一点。
canLogin(user,pass);
这又调用了一个外部服务。如何设置spring security以允许此操作?
[1] https://vaadin.com/learn/tutorials/modern-web-apps-with-spring-boot-and-vaadin/adding-a-login-screen-to-a-vaadin-app-with-spring-security
1条答案
按热度按时间um6iljoc1#
baeldung文章spring安全认证提供者有一个我认为适合您需要的示例。
只需创建自己的身份验证提供者,根据需要进行身份验证,然后在安全配置中注册它。