Результаты поиска :

×

Drupal Headless SSO с использованием протокола OAuth

Решение miniOrange для единого входа без интерфейса на основе OAuth эффективно соединяет бэкэнд Drupal с сервером OAuth, используя протокол аутентификации OAuth. После завершения процесса единого входа модуль генерирует JSON Web Token (JWT) для авторизованного пользователя и передает его на фронтенд-сайт. (Необязательно: этот токен можно использовать для проверки любых других API Drupal.) В этом руководстве подробно описаны основные принципы реализации безголового единого входа (SSO) как на бэкэнде, так и на фронтенде.

Давайте начнём с бэкэнда.

  • Модуль клиента miniOrange OAuth : Это модуль обеспечивает единый вход (SSO) между сайтом Drupal и поставщиком OAuth/OIDC.
  • Модуль аутентификации REST и JSON API После выполнения SSO, это модуль Это помогает сгенерировать JWT и отправить этот токен во фронтенд-приложение. (Необязательно: для аутентификации любых других API Drupal передайте тот же JWT в заголовке вместе с запросом API, и модуль аутентификации REST и JSON API проверит этот JWT.)
  • Модуль клиента miniOrange OAuth: Следуйте этим руководство по настройке для установления связи между сайтом Drupal и необходимым поставщиком OAuth/OIDC.
  • Модуль аутентификации REST и JSON API:
    • Для аутентификации API Drupal с использованием JWT необходимо настроить... Аутентификация JWT метод в модуле. Следуйте этому руководству. Руководство по настройке.
  • Настройте URL-адрес перенаправления для фронтенд-приложения:
    • Перейдите в Дополнительные настройки вкладка модуля аутентификации REST и JSON API.
    Усовершенствованные сегменты
    • В Настройки конечных точек токенов для безголового единого входа (SSO) Для получения подробной информации введите конечную точку фронтенд-приложения, куда браузер будет перенаправлен после процесса единого входа (SSO) с параметром кода. После этого нажмите на кнопку. Сохранение конфигурации конечной точки токена .
    • Настройка конечной точки токена для безголового SSO

      В этом разделе подробно описано все действия, которые пользователь должен выполнить на стороне фронтенда.

      Давай начнем:

      • Процесс авторизации:
        • Инициируйте вход в систему из пользовательского приложения (используя URL-адрес). {drupal-base-url}/moLogin)
        • Пользователь перенаправляется на настроенный сервер.
        • Введите учетные данные пользователя для аутентификации.
        • После успешной аутентификации пользователь перенаправляется обратно на внешний сайт, где код передается в качестве параметра запроса в URL-адресе.
        • Используйте код, полученный на предыдущем шаге, для отправки запроса к конечной точке токена Drupal. Для этого выполните следующие действия:
          • Найдите конечную точку токена в Настройки конечных точек токенов для безголового единого входа (SSO) Подробности. См. изображение ниже.
          Настройка конечной точки токена для безголового SSO
          • Пример отправки POST-запроса с полученным кодом:
            • Предположим, пользователь получает код (received_code) на фронтенде.
            • Теперь используйте приведенный ниже формат для отправки POST-запроса с помощью этого кода.
            •                     HTTP: POST https://{drupal_base_url}/getToken code=(received_code)
              
                              
        • Конечная точка токена проверит код.
        • Если код действителен, конечная точка токена предоставляет сгенерированный JWT для данного авторизованного пользователя (обратите внимание, что код предназначен для одноразового использования, поэтому его нельзя использовать повторно для получения JWT). Теперь используйте этот JWT для аутентификации в последующих API.
        • Примечание: Чтобы ознакомиться с форматом API-запросов, содержащих JWT-токен в заголовке, обратитесь к этой ссылке. руководство по настройке.


     Спасибо за ваш ответ. Мы свяжемся с вами в ближайшее время.

    Что-то пошло не так. Пожалуйста, отправьте запрос ещё раз.

    Мы свяжемся с вами в ближайшее время!



ADFS_sso ×
Привет!

Нужна помощь? Мы здесь!

поддержка