Здравствуйте, как я могу сохранить в базе данных клиента, который аутентифицируется с помощью Google? Я пробовал сделать это следующим образом: http://mmkay.pl/2017/03/19/spring-boot-saving-oauth2-login-data-in-db-using-principalextractor Но PrincipalExecutor не выполнялся в любое время .. Cook ie устанавливается, все работает, как должно, но я не знаю, как реализовать сохранение пользователя ...
Конфигурация безопасности:
@Configuration
public class WebSecurityConfiguration extends WebSecurityConfigurerAdapter {
@Override
public void configure(HttpSecurity http) throws Exception {
http.cors().and().authorizeRequests().antMatchers("/non-secured").permitAll()
.anyRequest().authenticated()
.and()
.oauth2Login()
.permitAll();
}
}
свойства
spring.security.oauth2.client.registration.google.client-id=******************************.apps.googleusercontent.com
spring.security.oauth2.client.registration.google.client-secret=****************************
пом. xml
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-oauth2-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-oauth2-jose</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security.oauth</groupId>
<artifactId>spring-security-oauth2</artifactId>
<version>2.3.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>