Найти в Дзене
МувМув | MoveMove

МувМув выпустила рабочую альтернативу VK ID провайдеру для Laravel

МувМув представила открытый Laravel-модуль movemoveapp/vkid — современный и полностью рабочий VK ID провайдер для Laravel Socialite, созданный в ответ на переход VK ID к протоколу OAuth 2.1. Пакет уже доступен в Packagist и может быть установлен одной командой: composer require movemoveapp/vkid После обновления VK ID на стандарт OAuth 2.1 старые Socialite-драйверы (в частности vkontakte) перестали работать корректно. Новый API VK теперь требует: Сообщество SocialiteProviders выпустило пакет SocialiteProviders/VKID, но он помечен как [READ ONLY] Subtree split of the SocialiteProviders/Providers и не содержит поддержки всех новых требований OAuth 2.1 и PKCE. По сути — это заготовка, не предназначенная для активной разработки. Разработчики компания МувМув разработали полностью рабочую альтернативу — movemoveapp/vkid, которая реализует все современные требования VK ID и полностью совместима с Laravel 10 → 12 и Socialite 5.6 → 5.23. Пакет изначально создавался для внутренних продуктов MoveM
Оглавление
Laravel Socialiite, VKID
Laravel Socialiite, VKID

МувМув представила открытый Laravel-модуль movemoveapp/vkid — современный и полностью рабочий VK ID провайдер для Laravel Socialite, созданный в ответ на переход VK ID к протоколу OAuth 2.1.

Пакет уже доступен в Packagist и может быть установлен одной командой:

composer require movemoveapp/vkid

Почему понадобилась альтернатива?

После обновления VK ID на стандарт OAuth 2.1 старые Socialite-драйверы (в частности vkontakte) перестали работать корректно.

Новый API VK теперь требует:

  • обязательной поддержки PKCE (Proof Key for Code Exchange);
  • использования device_id при обмене кода на токен;
  • корректной обработки id_token (JWT), который возвращается только при scope=openid.

Сообщество SocialiteProviders выпустило пакет SocialiteProviders/VKID, но он помечен как [READ ONLY] Subtree split of the SocialiteProviders/Providers и не содержит поддержки всех новых требований OAuth 2.1 и PKCE. По сути — это заготовка, не предназначенная для активной разработки.

Решение от МувМув

Разработчики компания МувМув разработали полностью рабочую альтернативу — movemoveapp/vkid, которая реализует все современные требования VK ID и полностью совместима с Laravel 10 → 12 и Socialite 5.6 → 5.23.

Пакет изначально создавался для внутренних продуктов MoveMove, где авторизация через VK ID используется в реальных условиях эксплуатации. Теперь это решение доступно всему сообществу Laravel!

Основные возможности

  • Полная поддержка OAuth 2.1 + PKCE
  • Обработка device_id при обмене кода на токен
  • Декодирование id_token (JWT) для извлечения e-mail
  • Поддержка openid, email, phone scopes
  • Совместимость с VK ID One Tap SDK
  • Кэширование code_verifier (Redis, Memcached и др.)
  • Лицензия MIT, открытый исходный код
  • Совместимость с Laravel 10–12 и PHP 8.0+

Совместимость с One Tap

Пакет полностью совместим с VK ID SDK 3.x и low-code-виджетами One Tap.

После успешного получения code и device_id SDK автоматически вызывает ваш callback-эндпойнт, а Laravel-провайдер movemoveapp/vkid обрабатывает все шаги — обмен кода на токен, получение профиля, e-mail и авторизацию пользователя.

Почему это важно

  • Соответствие современным требованиям безопасности OAuth 2.1 и OpenID Connect
  • Простота интеграции — всего несколько строк кода
  • Надежность: библиотека используется в продуктах MoveMove
  • Открытая лицензия MIT и прозрачный исходный код
  • Поддержка от разработчиков MoveMove

Репозиторий и документация

С любовью, ваш МувМув