Есть сторонний СЕРВИС_1, с авторизацией через OAuth2 (access_token + refresh_token)
При регистрации приложения на нём - позволяет указать колбек OAuth2.
Есть СЕРВИС_2, который живет на нескольких доменах в зависимости от предоставляемых типов услуг, но все домены используют данные СЕРВИС_1 через OAuth2.
Как организовать авторизацию?
Пока что придумали следующее:
1. Получать OAuth2 коллбек от СЕРВИС_1 на свой отдельный домен авторизации у СЕРВИС_2.
2. Домен авторизации единожды после авторизации отправляет полученные token'ы на нужный домен СЕРВИС_2.
3. В дальнейшем все манипуляции по update/refresh/revoke token'ов делает только уже конкретный домен СЕРВИС_2 с помощью полученных token'ов, а домен авторизации в последующих процессах не участвует.
Виктор, пардон что пропустил очевидные шаги, спецом для вас:
- получает коллбек с кодом авторизации
- делает запрос на получение токенов
- после получения токенов отправляет нужному домену
p.s. Если неправ - поправьте, с терминологией уже определился.
Я бы вынес все полномочия и логику аутентификации с внешними ресурсами в отдельный сервис, а все остальные сервисы обращались бы к нему, чтобы выполнить необходимое действие.