配置门户以使用外部 IdP

Apigee Developer Services 门户(简称门户)充当 Apigee Edge 的客户端,这意味着,该门户 作为一个独立的系统运行。实际上,门户网站使用的大部分信息 存储在 Edge 上。如有必要,门户会发出从 Edge 或 向 Edge 发送信息。

该门户始终与单个 Edge 组织相关联。配置 则可以为 账号。

如果您选择为边缘身份验证启用外部 IDP(例如 SAML 或 LDAP), 您便可将门户配置为 向 Edge 发出请求时进行身份验证。将门户配置为使用外部 IDP 会在 Edge 组织中自动创建一个新的机器用户账号,然后该门户 来向 Edge 发出请求。如需详细了解机器用户,请参阅 自动执行外部 IDP 的任务

外部 IDP 支持要求您已经安装并配置 边缘管理服务器节点上的 Apigee SSO 模块。启用外部 该门户的 IDP 如下所示:

  1. 按照说明安装 Apigee SSO 模块 安装 Apigee 单点登录以实现高可用性
  2. 安装门户网站,确保您的安装工作正常。请参阅 安装门户
  3. 按照本部分中的说明,在门户上配置 SAML 或 LDAP。
  4. (可选)按照说明在 Edge 上停用基本身份验证 停用 Edge 上的基本身份验证

为门户创建机器用户

启用外部 IDP 后,Edge 支持通过 使用机器用户。机器用户无需指定 密码。这意味着,您可以完全自动执行获取和刷新 OAuth2 的流程。 词元。

门户的 IDP 配置过程会自动在 组织和机构然后,门户会使用此机器用户账号 连接到 Edge。有关机器用户的更多信息,请参阅自动执行 外部 IDP 的任务

门户开发者身份验证简介 账号

将门户配置为使用外部 IDP 时,需要允许该门户使用 SAML 或 LDAP 进行身份验证 以便门户可以向 Edge 发出请求。不过,该门户也支持 名叫开发者的用户。

开发者构成了使用 API 构建应用的用户社区。应用开发者 使用该门户了解您的 API、注册使用您的 API 的应用,以及与您的 API 交互 或查看开发者社区中有关其应用使用情况的统计信息 信息中心。

当开发者登录该门户时,该门户负责 对开发者进行身份验证并强制执行基于角色的权限。门户仍会继续 即使您在 SDK 之间启用了 IDP 身份验证, 和 Edge。有关详情,请参阅通过 在门户与 Edge 之间建立连接

您还可以将门户网站配置为使用 SAML 或 LDAP 对开发者进行身份验证。对于 有关使用第三方 Drupal 模块启用 SAML 的示例,请参阅 通过 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 指定的机器用户添加到 以 Organization Administrator 身份与门户相关联的组织。
  2. 执行以下命令,在门户上配置外部 IDP:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile

    其中,configFile 是上述配置文件。

  3. 以门户管理员的身份登录门户。
  4. 在 Drupal 主菜单中,选择 Configuration >开发者门户。门户 配置屏幕,其中包括外部 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