3.4 KiB
Вход через VK ID и Яндекс
Пакеты vk_oauth и yandex_oauth добавляют внешние способы входа в единый
публичный аккаунт AVE.cms. Они используют общий OAuth-процесс со state и
короткоживущими данными сессии; VK ID дополнительно использует PKCE.
Общий порядок настройки
- Установите нужный пакет.
- Создайте OAuth-приложение в кабинете провайдера.
- Скопируйте callback URL со страницы настроек AVE.cms без изменений.
- Введите ID и секрет приложения, затем включите провайдера.
- Решите, можно ли создавать новые аккаунты и связывать их по совпавшему email.
- Проверьте вход в приватном окне браузера.
Секреты хранятся отдельно от обычных настроек в
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. После переноса сайта обновите его в кабинете провайдера. Отключение модуля скрывает кнопку входа. Деинсталляция удаляет регистрацию провайдера и его локальный секрет, но сохраняет публичные аккаунты пользователей.