Updated security configuration
This commit is contained in:
parent
92bc287686
commit
1d94338ea5
@ -1,14 +1,12 @@
|
|||||||
package ru.dragonestia.picker.cp.config;
|
package ru.dragonestia.picker.cp.config;
|
||||||
|
|
||||||
import com.vaadin.flow.spring.security.VaadinWebSecurity;
|
import com.vaadin.flow.spring.security.VaadinWebSecurity;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
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.EnableWebSecurity;
|
||||||
import org.springframework.security.core.userdetails.UserDetailsService;
|
|
||||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||||
import ru.dragonestia.picker.api.impl.RoomPickerClient;
|
|
||||||
import ru.dragonestia.picker.cp.model.provider.AccountProvider;
|
|
||||||
import ru.dragonestia.picker.cp.page.LoginPage;
|
import ru.dragonestia.picker.cp.page.LoginPage;
|
||||||
import ru.dragonestia.picker.cp.service.AccountService;
|
import ru.dragonestia.picker.cp.service.AccountService;
|
||||||
|
|
||||||
@ -16,6 +14,13 @@ import ru.dragonestia.picker.cp.service.AccountService;
|
|||||||
@Configuration
|
@Configuration
|
||||||
public class SecurityConfig extends VaadinWebSecurity {
|
public class SecurityConfig extends VaadinWebSecurity {
|
||||||
|
|
||||||
|
private AccountService accountService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public void setAccountService(AccountService accountService) {
|
||||||
|
this.accountService = accountService;
|
||||||
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
PasswordEncoder passwordEncoder() {
|
PasswordEncoder passwordEncoder() {
|
||||||
return new PasswordEncoder() {
|
return new PasswordEncoder() {
|
||||||
@ -31,17 +36,18 @@ public class SecurityConfig extends VaadinWebSecurity {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@Bean
|
|
||||||
UserDetailsService userDetailsService(RoomPickerClient adminClient, AccountProvider accountProvider) {
|
|
||||||
return new AccountService(adminClient, accountProvider);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void configure(HttpSecurity http) throws Exception {
|
protected void configure(HttpSecurity http) throws Exception {
|
||||||
http.authorizeHttpRequests(auth -> {
|
http.authorizeHttpRequests(auth -> {
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
http.formLogin(login -> {
|
||||||
|
login.successForwardUrl("/nodes");
|
||||||
|
});
|
||||||
|
|
||||||
|
http.userDetailsService(accountService);
|
||||||
|
|
||||||
super.configure(http);
|
super.configure(http);
|
||||||
setLoginView(http, LoginPage.class);
|
setLoginView(http, LoginPage.class);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user