Для настройки регистрации пользователей платформы ELIS через Яндекс необходимо создать приложение в Yandex OAuth. Чтобы сделать это, воспользуйтесь инструкцией в данном разделе.

Платформа должна иметь домен с действительным SSL-сертификатом.

При необходимости вы можете обратиться к официальной документации Яндекс.

1. Войдите в сервис Yandex OAuth через аккаунт Яндекс, с помощью которого вы планируете продолжать разработку.

2. Нажмите Создать приложение или перейдите по прямой ссылке.

3. Введите название вашего приложения, которое будет отображаться на странице авторизации пользователя.

4. В разделе платформ выберите Веб-сервисы. Нажмите Сохранить и продолжить.

5. Выберите данные пользователя, доступ к которым необходимо предоставить платформе. Должны быть выбраны все предлагаемые данные. Нажмите Сохранить и продолжить.

6. Добавьте адрес, на который платформа перенаправит пользователя после авторизации. Формат ввода:

https://domain.name:port/api/v1/login/oauth2/code/yandex 

где domain.name — доменное имя сервера платформы умного дома (файл vars/default.yml, параметр iot.serverName);

      port — HTTPS-порт (файл vars/default.yml, параметр iot.web.httpsPort).

Например: https://eltex-co.ru:443/api/v1/login/oauth2/code/yandex

Нажмите Сохранить и продолжить

7. Укажите email, на который будет приходить информация об изменениях параметров внешней авторизации. Нажмите Сохранить.

8. После настройки всех параметров отобразится окно, которое увидят пользователи при входе в ELIS с помощью Яндекс ID. Чтобы подтвердить сохранение, нажмите Все верно

На странице приложения будут доступны все параметры. При необходимости их редактирования нажмите на иконку .

9. Для дальнейшей настройки будут необходимы значения полей ClientID и Client secret:

Сохраните их, а затем отредактируйте конфигурационный файл /etc/ansible-iot/latest/vars/default.yml в соответствии с таблицей, приведенной ниже:

default.yml
# Параметры установки платформы.
iot:
  # Параметры authorization server.
  authorization:
    # Параметры для управления доступностью саморегистрации.
    selfRegistration:
      allowSocialNetworks: false

    # Параметры клиентских регистраций (через соцсети).
    clientRegistrations:
      yandex:
        enable: true
        clientId: "YandexClientIdChangeMe"
        clientSecret: "YandexClientSecretChangeMe"

Жирным шрифтом выделены параметры, значения которых необходимо задать, опираясь на столбец "Значение по умолчанию", с учетом ваших индивидуальных требований, а также данных из предыдущих шагов документа.

ПараметрЗначение по умолчаниюТребуемое значениеОписание

iot.authorization.selfRegistration.allowSocialNetworks

false

true

Глобальное включение возможности регистрации пользователей через социальные сети (Яндекс, ВК, Mail.ru)

iot.authorization.clientRegistrations.yandex.enable

true

true

Включение возможности регистрации пользователей через Яндекс
Для корректной работы требуется предварительно включить параметр iot.authorization.selfRegistration.allowSocialNetworks

iot.authorization.clientRegistrations.yandex.clientId

"YandexClientIdChangeMe"

Значение поля "ClientID"

"ClientID", полученный во время регистрации приложения в Yandex OAuth

iot.authorization.clientRegistrations.yandex.clientSecret

"YandexClientSecretChangeMe"

Значение поля "Client secret"

"Client secret", полученный во время регистрации приложения в Yandex OAuth

  • Нет меток