Задать вопрос
sovadeveloper
@sovadeveloper

Ошибка авторизации с помощью VK Oauth?

Доброго времени суток! Возникла следующая проблема: в пропертях указано следующее

security:
    oauth2:
      client:
        registration:
          vk:
            client-name: VK
            client-id: id
            client-secret: secret
            authorization-grant-type: authorization_code
            redirect-uri: "{baseUrl}/login/oauth2/code/{registrationId}"
            client-authentication-method: client_secret_post
            scope:
              - email
              - phone_number
              - friends
              - photos
        provider:
          vk:
            authorization-uri: https://oauth.vk.com/authorize
            token-uri: https://oauth.vk.com/access_token
            user-info-uri: "https://api.vk.com/method/users.get?v=5.121&fields=sex,city,country,photo_max,has_photo"
            user-name-attribute: name
            user-info-authentication-method: query


В SecurityConfig filterChain

@Bean
    public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
        http
                .csrf(AbstractHttpConfigurer::disable)
                .authorizeHttpRequests(authorizeRequest -> authorizeRequest
                        .requestMatchers("/error","/login").permitAll()
                        .anyRequest().authenticated()
                )
                .oauth2Login((loginCustomizer) ->
                        loginCustomizer.tokenEndpoint(tokenEndpointConfig ->
                                tokenEndpointConfig.accessTokenResponseClient(accessTokenResponseClient())
                        )
                );

        return http.build();
    }


Так же есть фронт на React. При поптыке постучаться на API моего приложения происходят редиректы следующего вида:

targetPublic → мой эндпоинт
64ff66323f38a599166470.png
Далее идет рекдирект на запрос «vk»
64ff663fe798c972430413.png
И уже после этого падает запрос с CORS
64ff66af6897d886593043.png

Грешу на то, что может быть проблема из-за localhost, но как будто бы не должно быть из-за этого проблем

Причем если стучать напрямую на localhost:8080, то авторизация происходит успешно, перебрасывает на форму VK ID авторизации, жму авторизоваться, попадаю в дебаге на точку остановы, там есть токен, все окей. Проблемы только если через фронт, видимо в нем дело, только не очень понятно в чем именно
Так же корсы "отключил" с помощью CrossOrigin(*), тоже не должно быть проблем

По настройкам приложения вк:

Адрес сайта: localhost:8080
Базовый домен: localhost
Доверенный redirect URI: localhost:8080/login/oauth2/code/vk
Доверенный redirect URI:http://localhost:5173/dashboard
Так же пробовал авторизовываться через гугл и гит, все замечательно работает) Проблема только с вк)
Может кто знает куда копать, сможет подсказать а то уже 2 недели сижу с проблемой, ноль сподвигов) Если будет нужен еще какой-то код, куда надо обратить внимание, то добавлю) Спасибо заранее!!!
  • Вопрос задан
  • 601 просмотр
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 1
HemulGM
@HemulGM
Delphi Developer, сис. админ
redirect_uri (обязательный параметр) — Адрес, на который будет переадресован пользователь после прохождения авторизации (домен указанного адреса должен соответствовать основному домену в настройках приложения).

https://dev.vk.com/ru/api/oauth-parameters
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы