Содержание
Настройка аутентификации Google в контроллере
Цель
В этой статье показано, как настроить аутентификацию Google на локальном контроллере, включая пошаговую настройку Google OAuth API и интеграцию для аутентификации через Google.
Требования
-
Программный контроллер Omada
-
Google OAuth API
Введение
Аутентификация Omada через Google Portal интегрирует Google OAuth API в портал системы управления сетью Omada, позволяя пользователям удобно и безопасно проходить аутентификацию в сети с помощью своих учетных записей Google.
Предварительные условия
-
Функция аутентификации Google основана на Google OAuth API. Для соответствия требованиям Google OAuth API при использовании аутентификации Google на локальном контроллере необходимо иметь доменное имя и доверенный сертификат для этого домена. Также убедитесь, что настройки DNS обеспечивают разрешение запросов от веб-клиентов к этому домену на IP-адрес локального контроллера. Конкретные требования к доменному имени см. в документации Google: https://developers.google.cn/identity/protocols/oauth2/web-server#uri-validation
Настройка
Настройка Google OAuth API
Для аутентификации Google требуется Google OAuth API. Если вы еще не создали его, выполните следующие шаги для создания и настройки.
Шаг 1. Перейдите на https://console.cloud.google.com/ и создайте проект для аутентификации Google.
Шаг 2. После завершения создания проекта перейдите в раздел APIs & Services через быстрый доступ или боковое меню.
Шаг 3. Перейдите к настройке экрана согласия OAuth (OAuth consent screen).

Нажмите GET STARTED.

Заполните обязательные поля: Имя приложения (App name), Адрес электронной почты для поддержки пользователей (User support email), затем нажмите NEXT.

Выберите тип аудитории как External и нажмите Next.

Заполните контактную информацию и нажмите NEXT.

Установите флажок «Я согласен с Политикой использования данных Google API Services» и нажмите CREATE.

Шаг 4. Перейдите на страницу Data Access и нажмите ADD OR REMOVE SCOPES.

Область доступа (Scope) определяет, к какой информации и операциям учетной записи пользователь разрешает доступ контроллеру. Необходимо добавить области openid и userinfo.email. Эти две области не являются чувствительными и используются аутентификацией Google для запроса уникального идентификатора и адреса электронной почты пользователя. Контроллер не сохраняет указанную личную информацию пользователей. После этого нажмите UPDATE для сохранения настроек (внизу страницы).


После обновления областей доступа не забудьте сохранить настройки.

Шаг 5. Создайте идентификатор клиента OAuth. В боковом меню выберите APIs & Services > Credentials, затем при создании учетных данных выберите OAuth client ID.

Выберите тип приложения — Веб-приложение (Web application).

Введите имя и в поле «Authorized redirect URIs» укажите следующий URI: https://{Ваше доменное имя}:8843/portal/sociallogin/auth. Веб-клиент будет использовать этот URI для перенаправления обратно на контроллер после завершения входа в Google для завершения последующего процесса аутентификации.

После нажатия Create во всплывающем окне отобразятся идентификатор клиента (Client ID) и секретный ключ (Client Secret).

Вы также можете просмотреть их позже, нажав на соответствующую запись в списке клиентов. Идентификатор клиента и секретный ключ являются учетными данными для созданного Google OAuth API. Контроллер будет использовать их для выполнения аутентификации Google через ваш API.

Шаг 7. Перейдите в OAuth consent screen > Audience и нажмите PUBLISH APP.

Настройка аутентификации Google в контроллере
Шаг 1. Выберите Google в раскрывающемся списке выбора типа аутентификации на странице настроек портала. Затем в разделе настроек аутентификации Google ниже введите Client ID и Client Secret вашего Google OAuth API.

Шаг 2. Настройте HTTPS-сертификат. Инструкцию по настройке HTTPS-сертификата можно найти по ссылке: Как настроить HTTPS-сертификат для устранения ошибки «Недействительный сертификат» - Сообщество Business.
Шаг 3. Проверка входа и добавление адресов, исключенных из аутентификации. После завершения настройки аутентификации Google используйте конечное устройство для доступа к странице портала и проверьте работу процесса аутентификации.
Адреса входа в Google различаются в зависимости от страны и региона. Во время проверки входа могут возникнуть проблемы с доступом. В таком случае запишите недоступные адреса из адресной строки браузера или с помощью F12 devtools и добавьте их в список исключений.

После добавления адреса в список исключений выполните проверку входа еще раз, чтобы убедиться, что процесс входа выполняется нормально.
Заключение
Выше приведено полное описание и настройка аутентификации Google; настройте их в соответствии с вашими потребностями.