файл application.yml
authorizedRedirectUris:
- http://localhost:3000/callback
Класс конфигурации сервера ресурсов
@Override
public void configure(HttpSecurity http) throws Exception {
http
oauth2Login()
.authorizationEndpoint()
.authorizationRequestRepository(this.authorizationRequestRepository())
.and()
.redirectionEndpoint()
.baseUri("/login/oauth2/callback/*") //this.authorizationResponseBaseUri())
.and()
.tokenEndpoint()
.accessTokenResponseClient(this.accessTokenResponseClient())
.and()
.userInfoEndpoint().oidcUserService(this.oidcUserService);
Класс конфигурации сервера авторизации
@Override
public void configure(ClientDetailsServiceConfigurer configurer) throws Exception {
configurer
.inMemory()
.withClient(clientId)
.authorizedGrantTypes("password", "refresh_token", "client_credentials", "authorization_code")
.authorities("ROLE_CLIENT", "ROLE_TRUSTED_CLIENT")
.scopes("read", "write","visitor")
.accessTokenValiditySeconds(86400)
.refreshTokenValiditySeconds(100000)
.secret(passwordEncoder.encode(clientSecret));
}
Внешним приложением было ReactJS one
Я могу успешно войти в систему с помощью входа в Google с помощью OAuth2. но случай не смог получить аутентифицированный пользовательский объект для внешнего интерфейса. Может ли кто-нибудь поддержать меня, чтобы решить эту проблему?