Настройте портал для использования внешних IDP

Портал Apigee Developer Services (или просто портал ) выступает в роли клиента Apigee Edge. Это означает, что портал не функционирует как автономная система. Вместо этого большая часть информации, используемой порталом, фактически хранится в Edge. При необходимости портал делает запрос на получение информации из Edge или отправку информации в Edge.

Портал всегда связан с одной организацией Edge. При настройке портала вы можете указать базовые учетные данные аутентификации (имя пользователя и пароль) для учетной записи в организации, которую портал использует для связи с Edge.

Если вы решите включить внешний IDP , такой как SAML или LDAP, для аутентификации Edge, вы можете затем настроить портал на использование этой аутентификации при отправке запросов к Edge. Настройка портала для использования внешнего IDP автоматически создает новую учетную запись пользователя компьютера в организации Edge, которую портал затем использует для отправки запросов в Edge. Дополнительную информацию о пользователях компьютеров см. в разделе Автоматизация задач для внешних IDP .

Для поддержки внешнего IDP для портала необходимо, чтобы вы уже установили и настроили модуль Apigee SSO на узле Edge Management Server. Общий процесс включения внешнего IDP для портала выглядит следующим образом:

  1. Установите модуль Apigee SSO, как описано в разделе Установка Apigee SSO для обеспечения высокой доступности .
  2. Установите портал и убедитесь, что ваша установка работает правильно. См. Установка портала .
  3. Настройте SAML или LDAP на портале, как описано в этом разделе.
  4. (Необязательно) Отключите базовую аутентификацию на Edge, как описано в разделе Отключение базовой аутентификации на Edge .

Создайте пользователя компьютера для портала

Когда включен внешний IDP, Edge поддерживает автоматическую генерацию токенов OAuth2 с помощью пользователей компьютеров . Пользователь компьютера может получить токены OAuth2 без необходимости указывать пароль. Это означает, что вы можете полностью автоматизировать процесс получения и обновления токенов OAuth2.

Процесс настройки IDP для портала автоматически создает пользователя компьютера в организации, связанной с порталом. Затем портал использует эту учетную запись пользователя компьютера для подключения к Edge. Дополнительную информацию о пользователях компьютеров см. в разделе Автоматизация задач для внешних IDP .

Об аутентификации для учетных записей разработчиков портала

Когда вы настраиваете портал на использование внешнего IDP, вы разрешаете порталу использовать SAML или LDAP для аутентификации в Edge, чтобы портал мог отправлять запросы к Edge. Однако портал также поддерживает тип пользователей, называемых разработчиками .

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

Когда разработчик входит на портал, именно портал отвечает за аутентификацию разработчика и соблюдение разрешений на основе ролей. Портал продолжает использовать обычную аутентификацию с разработчиками даже после включения аутентификации IDP между порталом и Edge. Дополнительные сведения см. в разделе Связь между порталом и Edge .

Также можно настроить портал на использование SAML или LDAP для аутентификации разработчиков. Пример включения SAML с использованием сторонних модулей Drupal см. в разделе Интеграция единого входа через SAML с порталом разработчика .

Файл конфигурации IDP для портала

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

В следующем примере показан файл конфигурации портала с поддержкой IDP:

# IP address of Edge Management Server and the node on which the Apigee SSO module is installed.
IP1=22.222.22.222

# URL of Edge management API.
MGMT_URL=http://$IP1:8080/v1

# Organization associated with the portal.
EDGE_ORG=myorg

# Information about the Apigee SSO module (apigee-sso).
# Externally accessible IP or DNS of apigee-sso.
SSO_PUBLIC_URL_HOSTNAME=$IP1
SSO_PUBLIC_URL_PORT=9099
# Default is http. Set to https if you enabled TLS on apigee-sso.
SSO_PUBLIC_URL_SCHEME=http

# SSO admin credentials as set when you installed apigee-sso.
SSO_ADMIN_NAME=ssoadmin
SSO_ADMIN_SECRET=Secret123

# Enables or disables external IDP support.
# Default is "n", which disables external IDP support.
# Change it to "y" to enable external IDs support.
DEVPORTAL_SSO_ENABLED=y

# The name of the OAuth2 client used to connect to apigee-sso.
# The default client name is portalcli.
PORTALCLI_SSO_CLIENT_NAME=portalcli
# OAuth client password using uppercase, lowercase, number, and special characters.
PORTALCLI_SSO_CLIENT_SECRET=Abcdefg@1

# Email address and user info for the machine user created in the Edge org specified
# above by EDGE_ORG.
# This account is used by the portal to make requests to Edge.
# Add this email as an org admin before configuring the portal to use an external IDP.
DEVPORTAL_ADMIN_EMAIL=DevPortal_SAML@google.com
DEVPORTAL_ADMIN_FIRSTNAME=DevPortal
DEVPORTAL_ADMIN_LASTNAME=SAMLAdmin
DEVPORTAL_ADMIN_PWD=Abcdefg@1

# If set, the existing portal OAuth client is deleted and a new one is created.
# The default value is "n".
# Set to "y" when you configure the external IDP and change the value of
# any of the PORTALCLI_* properties.
PORTALCLI_SSO_CLIENT_OVERWRITE=y

Чтобы включить поддержку внешнего IDP на портале:

  1. В пользовательском интерфейсе Edge добавьте пользователя компьютера, указанного DEVPORTAL_ADMIN_EMAIL , в организацию, связанную с порталом, в качестве администратора организации .
  2. Выполните следующую команду, чтобы настроить внешнего IDP на портале:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile

    Где configFile — это файл конфигурации, описанный выше.

  3. Войдите на портал как администратор портала.
  4. В главном меню Drupal выберите Configuration > Dev Portal . Появится экран конфигурации портала, включая настройки внешнего IDP:

    Обратите внимание на следующее:

    • Установлен флажок «Эта организация поддерживает SAML».
    • Конечная точка для модуля Apigee SSO заполнена.
    • Поля API-ключ и Потребительский секрет для Oauth-клиента портала заполнены.
    • Под кнопкой «Проверить соединение» появится сообщение «Соединение успешно выполнено» .
  5. Нажмите кнопку «Проверить соединение» , чтобы повторно проверить соединение в любое время.

Чтобы позже изменить эти значения, обновите файл конфигурации и выполните эту процедуру еще раз.

Отключить внешнего IDP на портале

Если вы решите отключить внешнего IDP для связи между порталом и Edge, портал больше не сможет отправлять запросы к Edge. Разработчики могут войти на портал, но не смогут просматривать продукты или создавать приложения.

Чтобы отключить аутентификацию внешнего IDP на портале:

  1. Откройте файл конфигурации, который вы использовали ранее для включения внешнего IDP.
  2. Установите для свойства DEVPORTAL_SSO_ENABLED значение n , как показано в следующем примере:
    DEVPORTAL_SSO_ENABLED=n
  3. Настройте портал, выполнив следующую команду:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile