### Fixed - 🔧 **OAuth Callback URL**: Исправлено формирование callback URL - добавлен отсутствующий слеш между доменом и путем - 🔒 **OAuth HTTPS**: Принудительное использование HTTPS для callback URL в продакшне (исправляет ошибку "redirect_uri is not associated") ### Changed - 🔄 **OAuth Routes**: Возвращены к стандартному формату `/oauth/{provider}` - провайдеры не передают параметр provider в callback
This commit is contained in:
@@ -24,8 +24,8 @@
|
||||
3. **APIs & Services** → **Credentials** → **Create Credentials** → **OAuth 2.0 Client ID**
|
||||
4. **Application type**: Web application
|
||||
5. **Authorized redirect URIs**:
|
||||
- `https://v3.dscrs.site/oauth/google/callback`
|
||||
- `http://localhost:3000/oauth/google/callback` (для разработки)
|
||||
- `https://v3.dscrs.site/oauth/google/callback` ⚠️ **ОБЯЗАТЕЛЬНО HTTPS**
|
||||
- `http://localhost:8000/oauth/google/callback` (для разработки)
|
||||
6. Скопировать **Client ID** и **Client Secret**
|
||||
|
||||
**Переменные окружения:**
|
||||
@@ -38,7 +38,7 @@ GOOGLE_CLIENT_SECRET=your_google_client_secret
|
||||
|
||||
1. Перейти в [GitHub Developer Settings](https://github.com/settings/developers)
|
||||
2. **New OAuth App**
|
||||
3. **Authorization callback URL**: `https://v3.dscrs.site/oauth/github/callback`
|
||||
3. **Authorization callback URL**: `https://v3.dscrs.site/oauth/github/callback` ⚠️ **ОБЯЗАТЕЛЬНО HTTPS**
|
||||
4. Скопировать **Client ID** и **Client Secret**
|
||||
|
||||
**Переменные окружения:**
|
||||
@@ -51,7 +51,7 @@ GITHUB_CLIENT_SECRET=your_github_client_secret
|
||||
|
||||
1. Перейти в [VK Developers](https://dev.vk.com/apps)
|
||||
2. **Создать приложение** → **Веб-сайт**
|
||||
3. **Настройки** → **Redirect URI**: `https://v3.dscrs.site/oauth/vk/callback`
|
||||
3. **Настройки** → **Redirect URI**: `https://v3.dscrs.site/oauth/vk/callback` ⚠️ **ОБЯЗАТЕЛЬНО HTTPS**
|
||||
4. Скопировать **ID приложения** и **Защищённый ключ**
|
||||
|
||||
**Переменные окружения:**
|
||||
@@ -65,7 +65,7 @@ VK_CLIENT_SECRET=your_vk_secure_key
|
||||
1. Перейти в [Facebook Developers](https://developers.facebook.com/)
|
||||
2. **My Apps** → **Create App** → **Consumer**
|
||||
3. **Facebook Login** → **Settings**
|
||||
4. **Valid OAuth Redirect URIs**: `https://v3.dscrs.site/oauth/facebook/callback`
|
||||
4. **Valid OAuth Redirect URIs**: `https://v3.dscrs.site/oauth/facebook/callback` ⚠️ **ОБЯЗАТЕЛЬНО HTTPS**
|
||||
5. Скопировать **App ID** и **App Secret**
|
||||
|
||||
**Переменные окружения:**
|
||||
@@ -78,7 +78,7 @@ FACEBOOK_CLIENT_SECRET=your_facebook_app_secret
|
||||
|
||||
1. Перейти в [Yandex OAuth](https://oauth.yandex.ru/)
|
||||
2. **Создать новое приложение**
|
||||
3. **Callback URI**: `https://v3.dscrs.site/oauth/yandex/callback`
|
||||
3. **Callback URI**: `https://v3.dscrs.site/oauth/yandex/callback` ⚠️ **ОБЯЗАТЕЛЬНО HTTPS**
|
||||
4. **Права**: `login:info`, `login:email`, `login:avatar`
|
||||
5. Скопировать **ID** и **Пароль**
|
||||
|
||||
@@ -127,8 +127,10 @@ heroku config:set GOOGLE_CLIENT_ID=xxx GOOGLE_CLIENT_SECRET=yyy
|
||||
- **ВАЖНО**: Callback URL должен указывать на backend (`v3.dscrs.site`), НЕ на frontend (`testing.discours.io`)
|
||||
|
||||
**Ошибка "redirect_uri is not associated with this application":**
|
||||
- Callback URL в настройках провайдера должен быть `v3.dscrs.site/oauth/{provider}/callback`
|
||||
- Callback URL в настройках провайдера должен быть `https://v3.dscrs.site/oauth/{provider}/callback`
|
||||
- **ОБЯЗАТЕЛЬНО HTTPS** (не HTTP) для продакшна
|
||||
- НЕ указывать frontend URL в настройках провайдера
|
||||
- Проверить что URL в настройках GitHub **точно совпадает** с тем что отправляет код
|
||||
|
||||
**VK ошибка "Code challenge method is unsupported":**
|
||||
- Это нормально, VK не поддерживает PKCE
|
||||
|
||||
Reference in New Issue
Block a user