Files
ave-cms/help/modules/oauth-providers.md
T
2026-07-27 12:58:44 +03:00

3.4 KiB

Вход через VK ID и Яндекс

Назад к разделу «Модули»

Пакеты vk_oauth и yandex_oauth добавляют внешние способы входа в единый публичный аккаунт AVE.cms. Они используют общий OAuth-процесс со state и короткоживущими данными сессии; VK ID дополнительно использует PKCE.

Общий порядок настройки

  1. Установите нужный пакет.
  2. Создайте OAuth-приложение в кабинете провайдера.
  3. Скопируйте callback URL со страницы настроек AVE.cms без изменений.
  4. Введите ID и секрет приложения, затем включите провайдера.
  5. Решите, можно ли создавать новые аккаунты и связывать их по совпавшему email.
  6. Проверьте вход в приватном окне браузера.

Секреты хранятся отдельно от обычных настроек в storage/secrets/modules/<code>.php. Значения окружения имеют приоритет:

VK_OAUTH_ENABLED
VK_OAUTH_CLIENT_ID
VK_OAUTH_CLIENT_SECRET
YANDEX_OAUTH_ENABLED
YANDEX_OAUTH_CLIENT_ID
YANDEX_OAUTH_CLIENT_SECRET

Опция создания аккаунта разрешает регистрацию пользователя при первом внешнем входе. Сопоставление по email связывает внешний профиль с уже существующим аккаунтом с тем же адресом; включайте его только когда доверяете email, возвращаемому провайдером.

Авторизованный пользователь видит включённые сервисы в личном кабинете. Для ещё не связанного сервиса показывается кнопка Привязать. Она запускает отдельный OAuth-процесс и добавляет внешний идентификатор к текущему аккаунту; новый пользователь при этом не создаётся. Уже связанный Яндекс или VK отмечается как подключённый.

VK ID

Публичные адреса:

/auth/oauth/vk
/auth/oauth/vk/callback

Права view_vk_oauth и manage_vk_oauth разделяют просмотр и изменение настроек.

Яндекс

Публичные адреса:

/auth/oauth/yandex
/auth/oauth/yandex/callback

Права view_yandex_oauth и manage_yandex_oauth разделяют просмотр и изменение настроек.

Callback зависит от текущего домена, базового пути и HTTPS. После переноса сайта обновите его в кабинете провайдера. Отключение модуля скрывает кнопку входа. Деинсталляция удаляет регистрацию провайдера и его локальный секрет, но сохраняет публичные аккаунты пользователей.