Видео о том, как создать приложение в сервисе авторизации VK ID
Перед скачиванием и подключением к проекту VK ID SDK создайте приложение в кабинете сервиса авторизации VK ID. В результате для вас будут сгенерированы уникальные параметры:
ID вашего приложения (client_id),
защищенный ключ,
сервисный ключ доступа.
Эти параметры потребуются вам в процессе интеграции VK ID SDK или при самостоятельной интеграции. Также параметры нужны при выполнении запроса данных пользователя.
Заполните поле с названием приложения — его увидят пользователи в окнах авторизации и личном кабинете VK ID пользователя.
Выберите платформу для вашего приложения:
Web, если хотите интегрировать VK ID на веб-сайт;
iOS или Android, если планируете интеграцию в мобильные клиенты.
Выберите изображение, которое будет использоваться для окон авторизации и в качестве иконки приложения в личном кабинете пользователя VK.
Заполните поля в зависимости от платформы приложения:
Для приложения на платформе типа Web:
Базовый домен — на нём будет работать авторизация через VK ID и выполняться запросы в браузере. Количество базовых доменов для одного приложения ограничено. Максимально возможное — 102. Если вам требуется добавить больше базовых доменов — создайте дополнительное приложение;
Доверенный redirect URL — URL, куда будет переадресован браузер пользователя после того, как пользователь нажмёт Продолжить как. Домен доверенного redirect URL должен в точности совпадать с базовым доменом — поле чувствительно к формату и регистру. Также на этот адрес возвращается авторизационный код. Адрес обязательно должен совпадать с тем, который вы будете указывать при настройке VK ID в методе VKID.Config.init Рекомендации по указанию адреса
Укажите все поддомены. Пример: https://yoursite.loc/auth и https://www.yoursite.loc/auth.
Если нужно, используйте в конце адреса слеш.
Не указывайте в адресе параметры и якоря.
Для приложения на платформе типа iOS заполните поле Universal link — укажите ссылку, которая поддержана как universal link у вас в приложении и не занята в вебе. Это позволит перенаправить пользователя к вам в приложение после быстрой авторизации. Пример: https://foobar.ru/auth/vk-id.
Для приложения на платформе типа Android заполните поля:
Название пакета приложения — укажите название пакета приложения для отображения данных пользователя на кнопке (имя, фото профиля, телефон);
SHA-1 хеш подписи приложения — укажите SHA-1 хеш подписи приложения для отображения данных пользователя на кнопке (имя, фото профиля, телефон).
Как подписать приложение в Android Studio
На панели справа нажмите значок со слоном → В разделе Gradle выберите Execute Gradle Task → В терминале введите gradle signingReport. В результате вы получите SHA-1 хеш подписи вашего приложения.
Обратите внимание
если вы создаёте приложение и будете подключать VK ID с помощью SDK, рекомендуем использовать SDK последней версии. Для вновь созданных приложений авторизация VK ID будет работать только с подключением SDK версии 2.0.0 и выше;
предусмотрена возможность использования поддоменов. Для этого в начале домена поставьте точку: .domain.com. Это позволит работать со всеми поддоменами, например a.domain.com, a.b.domain.com;
чтобы в процессе интеграции VK ID локально проверить, работает ли авторизация, разверните свой проект на http://localhost:80. Обязательно добавьте localhost в список базовых доменов. В этом случае поле Базовый домен заполнится таким образом: localhost (порт указывать не нужно). Доверенный redirect URL пропишите с http и без порта — http://localhost;
на этапе тестирования также можно использовать 443 порт для схемы https. В этом случае дополнительно пропишите в Доверенный redirect URLhttps://localhost. Другие порты временно не поддерживаются.
Нажмите на кнопку Готово.
Создание приложения VK ID
Настройка приложения
После создания приложения вы сможете управлять им в личном кабинете сервиса авторизации VK ID:
отметить приложение как тестовое. Это визуальная отметка, которая не влияет на работу;
Настройте доступы к данным, которые вы хотите получать после авторизации пользователя в приложении.
Параметры приложения
Нажмите на карточку приложения — так вы перейдете в раздел Приложение.
В подразделе Информация о приложении отображаются уникальные параметры, которые понадобятся вам для настройки VK ID SDK и работы с API:
ID приложения — нужен для настройки VK ID SDK;
Защищённый ключ — используется для настройки библиотек на клиентах в качестве параметра client_secret;
Сервисный ключ доступа — используется для вызова методов API ВКонтакте в back-2-back запросах.
Выберите состояние приложения:
Приложение включено и видно всем — если хотите, чтобы пользователи могли авторизоваться в вашем приложении (установлено по умолчанию);
Отключено — если хотите отключить возможность авторизации.
При необходимости измените название приложения и изображение для окон авторизации и иконки приложения.
В подразделе Подключение авторизации отображаются данные для авторизации, которые вы указали при создании приложения. Проверьте корректность и при необходимости добавьте дополнительные данные.
Настройка авторизации
Перейдите в раздел Авторизация и настройте авторизацию для пользователя:
В подразделе Дополнительные способы входа выберите, какие дополнительные способы будут доступны пользователю для входа в ваш сервис:
Авторизация через Одноклассники — включенная опция отображает дополнительный OAuth ОК на окне авторизации VK ID и позволяет безопасно авторизовать пользователя вашего приложения через аккаунт Одноклассники;
Авторизация через Mail — включенная опция отображает дополнительный OAuth Mail на окне авторизации VK ID и позволяет безопасно авторизовать пользователя вашего приложения через аккаунт Mail. Если вы хотите, чтобы кнопки для входа через ОК и Mail также появились на окне авторизации вашего сервиса, подключите виджет 3 в 1 для Web, Android, iOS, Flutter.
Авторизация VK ID с дополнительными способами входа через Одноклассники и Mail
Авторизация по QR-коду, если вы хотите, чтобы пользователь мог авторизоваться в веб-версии вашего сервиса по QR-коду. Доступно для всех платформ (Web, iOS, Android). Подробнее об авторизации по QR-коду
Авторизация в мобильной версии сайта через приложение VK, если вы хотите, чтобы пользователь мог авторизоваться через приложение VK в мобильной версии веб-приложения вашего сервиса. Доступно для всех платформ (Web, iOS, Android). Подробнее об авторизации через приложение VK
В подразделе Данные для регистрации выберите поля, которые пользователю обязательно нужно будет заполнить при регистрации. Пользователь не сможет завершить регистрацию в вашем сервисе, если не заполнит хотя бы одно из этих полей.Исключение — поле Почта. Запрос почты можно сделать как опциональным, так и обязательным. Если поле опциональное, пользователь может пропустить этот шаг. В обоих случаях, если пользователь укажет почту, ему нужно будет подтвердить её с помощью OTP-кода, отправленного на этот почтовый адрес.Запрос почты позволяет получать актуальные адреса, что даёт возможность эффективнее выстраивать маркетинговые коммуникации. Ещё почта может использоваться как идентификатор пользователя для связки аккаунта VK ID с существующей учётной записью в вашем сервисе.
В подразделе Данные для дорегистрации включите опцию Пароль, если хотите, чтобы пользователь при каждом входе в ваш сервис дополнительно вводил пароль.По умолчанию пользователи авторизуются в сервисе через код подтверждения, который отправляется на номер телефона, привязанный к аккаунту VK ID. Дополнительно вы можете подключить авторизацию по паролю — это повысит безопасность вашего сервиса. После включения опции при первом входе в ваш сервис пользователю потребуется задать пароль. При каждом повторном входе в ваш сервис пользователю нужно будет вводить заданный пароль от своего аккаунта.
В подразделе Правовые документы выберите, какие документы с условиями использования сервиса и политикой конфиденциальности будете использовать, — свои или типовые.
Настройка доступов
Перейдите в раздел Доступы и выберите данные, доступ к которым хотите получать после авторизации пользователя в приложении.Перечень данных, доступ к которым вы запрашиваете, пользователь увидит на странице входа в приложение.Есть два вида доступов:
базовые — доступны сразу после создания приложения;
Личные данные пользователя: фамилия и имя, фото профиля, пол и дата рождения (vkid.personal_info), — минимальный набор данных, доступ к которым нужно запросить у пользователя. Опции подключаются автоматически при создании приложения.
Почта (email) — дополнительные данные, которые можно запросить при необходимости. По умолчанию опция отключена.
Если вам нужен доступ к почте пользователя:
Включите опцию Почта и нажмите Сохранить. Отобразится сообщение Изменения сохранены — доступ к почте подключен.
Расширенные доступыЧтобы получить расширенные доступы и управлять ими, подтвердите ваш профиль бизнеса. Порядок подтверждения зависит от вашего налогового статуса:
После успешного подтверждения бизнес-профиля в сервисе авторизации вы можете самостоятельно включать и отключать нужные доступы:
номер телефона (phone) — доступно только приложениям с VK ID;
сообщества (groups);
товары (market).
По запросу информации о пользователе API VK ID возвращает все данные, права на которые даёт указанный в запросе токен и которые запрошены при настройке приложения (берётся их совпадение).Список названий прав доступа, которые необходимы приложению, передаётся в параметре scope в процессе получения токена. Если параметр не указан, то берётся минимальное значение прав доступа по умолчанию для приложений — vkid.personal_info. При этом запрошенный список прав для приложения не может быть больше, чем разрешённый список в настройках приложения. Подробнее о работе с доступами в коде приложения.Как подтвердить профиль бизнеса
В выбранном приложении перейдите в раздел Доступы → Расширенные доступы.
В модальном окне Подтвердите ваш профиль бизнеса нажмите Подтвердить.
Сервис авторизации перенаправит вас в личный кабинет VK Бизнеc ID. В нём подтвердите ваш профиль бизнеса удобным способом. Подробнее.
В случае успешного подтверждения вам на почту придёт уведомление о том, что вы можете управлять расширенными доступами. Аналогичное уведомление вы увидите в разделе Расширенные доступы.В случае неуспешного подтверждения в личном кабинете VK Бизнеc ID вы увидите уведомление об ошибке. Исправьте нужные данные и отправьте запрос на проверку ещё раз.Как подтвердить профиль бизнеса нерезидентам РФ
В выбранном приложении перейдите в раздел Доступы → Расширенные доступы и нажмите Заполнить.
Проверьте основную информацию и заполните дополнительные данные о себе или вашей организации.
Отправьте дополнительные данные на модерацию — для этого нажмите Отправить на проверку.
Дождитесь, когда данные успешно пройдут проверку — вам придёт уведомление на почту. После этого вы сможете управлять расширенными доступами.
Перейдите в раздел Доступы → Расширенные доступы, включите нужные опции и нажмите Сохранить.
Если аккаунт не подтверждён, вам на почту придёт уведомление с причинами отказа. Исправьте необходимые данные и отправьте запрос на проверку ещё раз.Как управлять доступами
В выбранном приложении перейдите в раздел Доступы → Расширенные доступы.
Включите или отключите нужные опции и нажмите Сохранить. Отобразится сообщение: Изменения сохранены.
Что делать, если приложение заблокировано
В разделе Мои приложения статус Включено имеют те приложения, в которых пользователи могут авторизоваться.Если в этом разделе вы видите статус Заблокировано у приложения, перейдите в него — так вы узнаете причину блокировки.Почему приложение может быть заблокировано
Визуальное оформление кнопки входа VK ID на вашем сайте не соответствует правилам. Для разблокировки приложения оформите кнопку согласно требованиям и затем напишите в Поддержку на почту devsupport@corp.vk.ru.
VK ID используется на доменах, которые не соответствуют указанным в настройках приложения. Для разблокировки приложения перечислите актуальные домены в настройках и затем напишите в Поддержку на почту devsupport@corp.vk.ru.
Дальнейшие шаги
Установите VK ID SDK и настройте элементы быстрого входа в ваше приложение: кнопку One Tap, шторку авторизации, виджет 3 в 1 или всё сразу. Для приложения на платформе Web это можно сделать с помощью Low-code — инструмент сгенерирует готовый код для вставки, где используется установка SDK через скрипт. Если этот способ вам не подходит — установите VK ID SDK через пакетный менеджер.
Также ознакомьтесь с тем, как работает авторизация на Web, Android, iOS, Flutter и выберите способ интеграции.