Портал услуг для разработчиков Apigee (или просто портал) действует как клиент Apigee Edge. Это означает, что портал не работает как отдельная система. Большая часть информации, используемой порталом, хранится в Edge. При необходимости портал отправляет запрос на получение информации от Edge или на отправку информации в Edge.
Портал всегда связан с одной организацией Edge. При настройке портала можно указать учетные данные для базовой аутентификации (имя пользователя и пароль) для аккаунта в организации, который портал использует для связи с Edge.
Если вы решите включить для аутентификации Edge внешнего IDP, например SAML или LDAP, вы можете настроить портал так, чтобы он использовал эту аутентификацию при отправке запросов в Edge. При настройке портала для использования внешнего поставщика идентификационной информации в организации Edge автоматически создается аккаунт пользователя машины, который портал использует для отправки запросов в Edge. Подробнее о пользователях-машинах можно узнать в статье Как автоматизировать задачи для внешних поставщиков идентификационной информации.
Для поддержки внешнего поставщика идентификационной информации на портале необходимо, чтобы вы уже установили и настроили модуль Apigee SSO на узле сервера управления Edge. Чтобы включить внешний поставщик идентификационной информации для портала, выполните следующие действия:
- Установите модуль Apigee SSO, как описано в разделе Установка Apigee SSO для обеспечения высокой доступности.
- Установите портал и убедитесь, что он работает правильно. Подробнее о том, как установить портал…
- Настройте SAML или LDAP на портале, как описано в этом разделе.
- При необходимости отключите базовую аутентификацию в Edge, как описано в разделе Отключение базовой аутентификации в Edge.
Как создать машинного пользователя для портала
Если внешний поставщик идентификационной информации включен, Edge поддерживает автоматическую генерацию токенов OAuth2 с помощью машинных пользователей. Пользователь-робот может получать токены OAuth2 без необходимости указывать код доступа. Это означает, что вы можете полностью автоматизировать процесс получения и обновления токенов OAuth2.
В процессе настройки поставщика идентификационной информации для портала автоматически создается пользователь машины в организации, связанной с порталом. Затем портал использует этот аккаунт пользователя-машины для подключения к Edge. Подробнее об автоматизации задач для внешних поставщиков идентификационной информации…
Об аутентификации в аккаунтах разработчиков портала
Когда вы настраиваете портал на использование внешнего поставщика идентификационной информации, вы разрешаете порталу использовать SAML или LDAP для аутентификации в Edge, чтобы портал мог отправлять запросы в Edge. Однако на портале также поддерживается тип пользователей разработчики.
Разработчики – это сообщество пользователей, которые создают приложения с помощью ваших API. Разработчики приложений используют портал, чтобы узнавать о ваших API, регистрировать приложения, которые их используют, взаимодействовать с сообществом разработчиков и просматривать статистическую информацию об использовании своих приложений на панели управления.
Когда разработчик входит на портал, именно портал отвечает за аутентификацию и применение разрешений на основе ролей. Портал продолжает использовать базовую аутентификацию с разработчиками даже после того, как вы включите аутентификацию IDP между порталом и Edge. Подробнее о взаимодействии между порталом и Edge…
Вы также можете настроить портал на использование SAML или LDAP для аутентификации разработчиков. Пример того, как включить SAML с помощью сторонних модулей Drupal, приведен в статье Интеграция SSO через SAML с порталом разработчика.
Файл конфигурации поставщика идентификационной информации для портала
Чтобы настроить внешний поставщик идентификационной информации для портала, необходимо создать файл конфигурации, в котором будут определены настройки портала.
Ниже приведен пример файла конфигурации портала с поддержкой 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
Чтобы включить поддержку внешнего поставщика идентификационной информации на портале:
- В интерфейсе Edge добавьте пользователя машины, указанного в
DEVPORTAL_ADMIN_EMAIL, в организацию, связанную с порталом, в качестве администратора организации. - Выполните следующую команду, чтобы настроить внешнего поставщика идентификационной информации на портале:
/opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile
где configFile – это файл конфигурации, описанный выше.
- Войдите на портал как администратор.
- В главном меню Drupal выберите Configuration > Dev Portal (Конфигурация > Портал разработчика). Откроется экран конфигурации портала, на котором будут показаны настройки внешнего поставщика идентификационной информации:

Обратите внимание:
- Установлен флажок This org is SAML-enabled (Для этой организации включена поддержка SAML).
- Конечная точка модуля Apigee SSO заполнена.
- Поля Ключ API и Секретный код клиента для клиента OAuth портала заполнены.
- Под кнопкой Проверить подключение появится сообщение Подключение установлено.
- Чтобы повторно проверить подключение, нажмите кнопку Test Connection (Проверить подключение).
Чтобы изменить эти значения позже, обновите файл конфигурации и снова выполните эту процедуру.
Как отключить внешнего поставщика идентификационной информации на портале
Если вы отключите внешний поставщик идентификационной информации для обмена данными между порталом и Edge, портал больше не сможет отправлять запросы в Edge. Разработчики могут войти на портал, но не смогут просматривать продукты или создавать приложения.
Чтобы отключить аутентификацию внешнего поставщика идентификационной информации на портале:
- Откройте файл конфигурации, который вы использовали ранее, чтобы включить внешний сервис управления ключами.
- Задайте для свойства
DEVPORTAL_SSO_ENABLEDзначениеn, как показано в примере ниже:DEVPORTAL_SSO_ENABLED=n
- Настройте портал, выполнив следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile