创建和配置目录

如何在 IBM® API Connect中创建和配置目录。

准备工作

您必须具有目录创建许可权才能完成此任务。 有关权限的更多信息,请参阅 API Connect 用户角色.
  • 作为创建目录的用户,您自动成为目录所有者并具有所有目录许可权。
  • 如果配置新用户注册表以向 Developer Portal认证用户,那么还必须完成目录中的加载部分,以使注册表可供 Developer Portal 用户使用。 请参阅步骤 10 以获取详细信息。
  • Developer Portal中的每个帐户 (包括同一站点的不同用户注册表) 都必须具有唯一的电子邮件地址,包括站点管理员帐户。 例如,如果为特定 Developer Portal 站点配置三个不同的用户注册表,那么只能使用电子邮件地址 alice@acme.com 从其中一个用户注册表登录到该站点。 管理员帐户的缺省电子邮件地址是目录所有者的电子邮件地址。 无法创建与管理员帐户(或与其电子邮件地址不同的目录所有者帐户)具有相同电子邮件地址的用户帐户(和关联的使用者组织)。 使用同一电子邮件地址创建帐户的所有尝试都将导致新帐户无法正常运行,并在尝试登录时返回以下错误消息:A user already exists with this email address

过程

要创建和配置目录,请完成以下步骤:

  1. 登录到 API Manager ,然后单击 “管理”图标 管理
  2. 创建目录。
    您可以通过以下任一方式创建目录:
    指定所有者,然后配置目录:
    1. 单击 添加 > 创建目录
    2. 目录所有者字段中,选择目录的所有者;缺省情况下,您是所有者。 您可以指定属于提供者组织成员的任何用户。
    3. 继续执行步骤 3 以配置目录。

    使用激活链接向预期目录所有者发送邀请电子邮件:

    1. 单击 添加 > 邀请目录所有者
    2. 输入目录所有者的电子邮件地址,然后单击邀请
    3. 收到电子邮件时,目录所有者必须激活目录并对其进行配置:
      1. 打开激活链接,完成注册表单,然后登录到 API Manager UI。
      2. 单击管理目录,单击注册表单上提供的目录名称,然后单击目录设置选项卡
      3. 继续执行步骤 6 以配置目录。
  3. 输入目录 标题名称将自动输入且无法进行更改。
    注: 名称 字段中的值是用于在 developer toolkit CLI 命令中标识目录的单个字符串。 标题 用于显示; 您可以更改标题,但名称不会更改。

    要查看用于管理目录的 CLI 命令,请参阅 工具箱 CLI 参考文档

  4. 单击 创建
    该新目录将显示在“管理”页面上。
  5. 要继续配置目录,请在 " 管理 " 页面上选择目录,然后单击 目录设置 选项卡
  6. 要配置目录的常规设置,请单击 概述,然后继续执行以下步骤:
    1. 缺省情况下,新目录是开发目录。 要在生产环境中使用目录,请将生产方式滑块控件设置到位置,然后单击确认

      在开发目录中,将强制执行所有发布操作,并且自动解决任何冲突。 如果重新发布以前发布的产品版本,那么将进行覆盖而不发出警告,例如,允许您在测试期间反复重新发布相同的产品版本。 如果在开发目录中启用了空间,并且将先前已发布的产品版本重新发布到其他空间,那么将从先前空间中移除此产品。

      但是,如果目录已配置为需要核准,那么在需要核准登台和发布操作方面,开发目录的行为与任何其他目录相同。

      注: 在生产目录中,以下条件适用:
      • 如果目录中已有名称和版本相同的产品,那么无法将产品发布到目录。 而是必须创建产品的新版本以进行发布; 请参阅 创建产品的新版本 。 如果在生产目录中启用空间,那么无法将具有相同名称和版本的产品发布到目录中的多个空间。
      • 如果此新产品包含一个或多个已修改的 API ,那么您 必须 创建 API 的新版本以包含在产品中; 请参阅 创建 API 定义的新版本。 如果产品包含已修改的 API,并且已存在相同名称和版本的已发布 API,那么不会发布更改。
    2. 要在空间中启用此目录的分区,请将 空间 滑块控件设置为 开启 位置,然后单击 确认
      有关详细信息,请参阅 在 IBM API Connect 中使用聚合。
    3. 如果目录是缺省登台目录,请将 缺省 滑块控件移至 开启 位置,然后单击 确认。 然后,对发布到目录的 API 的调用可以使用不包括目录名称的简短 URL。
      注: 只能对一个目录启用 缺省值 。 如果已将另一个目录设置为缺省目录,那么您将无法在此目录上启用设置,而必须先禁用另一个目录上的设置。
    4. 要对在与此目录关联的 Developer Portal 中创建的应用程序启用应用程序生命周期,请将 应用程序生命周期 设置为 On,然后单击 确认
      启用应用程序生命周期后,缺省情况下,应用程序开发者在 开发者门户网站 中创建的任何应用程序都具有 "开发" 状态。 应用程序测试完成后,应用程序开发者可以请求将应用程序升级到生产状态。 有关更多信息,请参阅 管理应用程序生命周期
  7. 要配置目录的网关服务设置,请单击 网关服务,然后继续执行以下步骤:
    注: 如果在目录中启用了空间,那么您将配置空间的网关设置,而不是整个目录的网关设置。
    1. 单击 编辑
    2. 选择要用于此目录的网关服务。
      使用 Cloud Manager UI 来配置网关服务。 有关详细信息,请参阅 注册网关服务。 如果已配置任何目录缺省网关服务,那么在创建新目录时将已选择这些服务; 请参阅 为目录配置缺省网关服务

      TYPE 列指示列出的每个网关服务, DataPower® Gateway (v5 compatible)DataPower API Gateway或事件网关服务的网关类型。 有关更多信息,请参阅 API Connect 网关类型

    3. 单击保存以保存更改。
      对于没有提供事件网关服务的目录,从 Event Endpoint Management 创建或导入 AsynchAPIs 的用户界面被禁用。 如果要在目录中使用 AsynchAPIs ,必须在目录中添加事件网关服务。

    通过将 API 添加到产品中,然后将该产品发布到目录,就可以发布这些 API。 为了能够将产品发布到目录,必须至少为目录分配一个网关服务,以便可以在网关服务端点调用产品中的 API。 您可以将多个网关服务分配给一个目录,它们可以是混合类型 DataPower API GatewayDataPower Gateway (v5 compatible)

    产品是特定于网关类型的 DataPower API GatewayDataPower Gateway (v5 compatible)。 缺省情况下,将产品发布到目录时,会将其发布到与该产品类型相同的所有已分配网关服务,但您可以选择在发布时仅将该产品发布到该类型的所选网关服务; 请参阅 发布草稿产品 以获取更多信息。 产品中的 API 将可在所有指定的网关服务端点调用。

    如果选择两个或多个网关服务,那么要使分析数据在 Developer Portal 中可用于此目录,网关服务必须全部与 同一 分析服务相关联。 如果所选网关服务的关联分析服务集包含两个或多个不同的分析服务,那么 Developer Portal 不会 显示分析数据。 分析服务与 Cloud Manager 用户界面中的网关服务相关联; 请参阅 使分析服务与网关服务相关联
    注: 您还可以使用 开发者工具箱 CLI 来配置目录的网关服务设置; 有关详细信息,请参阅 工具箱 CLI 参考文档
  8. 要指定希望实施核准的产品生命周期状态更改,请完成以下步骤:
    1. 单击目录设置导航窗格中的 生命周期核准 ,然后单击 编辑
    2. 选择所需的状态更改,然后在完成时单击 保存
      例如,如果取消选中所有其他复选框而只选择了“发布”,那么在任何人尝试发布某个产品时都需要进行核准,但任何其他生命周期状态更改都不需要进行核准。
      注: 缺省情况下,已禁用对目录中产品生命周期状态更改的核准。 您必须显式启用要实施的产品生命周期状态更改。
    3. 要允许产品生命周期变更的发起方自行核准,请将 任务自核准 滑块控件移至 开启 位置。
      注: 在开发目录中,产品生命周期变更的发起方始终可以自行核准该变更。 在生产目录中,仅当启用了目录设置 任务自核准 时,产品生命周期变更的发起方才能自行核准该产品。
    4. 完成后单击 保存
  9. 要配置 API Manager 中每个角色具有的许可权,请完成以下步骤:
    1. 单击目录设置导航窗格中的 角色
      要查看角色的当前许可权,请展开该角色。
    2. 单击要处理的角色旁边的 "选项" 图标 “选项”图标 ,然后单击 编辑
    3. 根据需要选中或清除许可权复选框。

      要确保角色可以管理 用户定义的策略,请针对 设置 许可权选择 管理

      要为角色授予用于核准特定生命周期状态更改的许可权,请在产品核准部分中选择状态更改。

      注: 您无法除去已在提供者组织级别分配给角色的许可权。 但是,您可以在提供者组织级别添加尚未分配的许可权。
    4. 完成后单击 保存
  10. 要管理 API 使用者在此目录中的加载,请完成以下步骤:
    1. 单击目录设置导航窗格中的 加载
    2. 要选择用于认证与此目录关联的 Developer Portal 用户的注册表,请单击 目录用户注册表 部分中的 编辑 ,选择所需的注册表,然后单击 保存
      有关如何配置用户注册表的详细信息,请参阅 使用企业用户注册表进行认证
      重要信息: 请勿在 API ManagerDeveloper Portal之间或 Developer Portal 站点之间共享用户注册表 (如果启用了自助服务加载或期望在任何站点中删除帐户)。 您应该为它们创建单独的用户注册表,即使单独的注册表指向相同的后端认证提供程序 (例如, LDAP 服务器) 也是如此。 此分离使 开发者门户网站 能够在目录中维护唯一的电子邮件地址,而无需 API Manager 满足相同的需求。 这还可避免用户从 Developer Portal 中删除其帐户时发生问题,从而影响其 API Manager 访问权。
    3. 要设置缺省注册表,请找到所需的注册表,然后单击 “选项”图标 设置缺省值

      当 API 使用者注册到 开发者门户网站时,缺省情况下将使用指定的注册表以及用于选择另一个注册表的选项。

    4. 要允许 API 使用者完成自己对 Developer Portal的注册过程,请将 自助服务加载 设置为 开启
      如果此选项处于禁用状态,那么如果没有使用者组织所有者的邀请,那么 API 使用者无法注册。
    5. 要需要核准所有新的自助服务加入 Developer Portal,请将 自助服务加入核准 设置为 开启
      如果启用了此选项,那么 API 使用者尝试注册到 Developer Portal 将导致发送核准请求。 此请求显示在关联 Developer Portal的目录中的 " 任务 " 选项卡中,可以从该目录核准或拒绝该请求。

      请注意,每当创建使用者组织时,都会采用 自助服务上线核准 。 因此,即使已批准 API 使用者访问具有特定使用者组织的 开发者门户网站 ,如果他们随后尝试在同一 开发者门户网站中创建另一个使用者组织,他们的请求仍将经历核准过程。

      注: 要启用自助服务入职核准,还必须完成以下任务:
      • 配置用户注册表以需要用户的电子邮件地址。
      • 配置 OIDC 应用程序以发送用户的电子邮件地址进行核准。
    6. 要编辑自助服务入职任务的超时时间段,请单击 自助服务入职任务超时 部分中的 编辑 ,指定所需的超时时间段,然后单击 保存。 此任务的超时周期涵盖电子邮件激活链接,如果启用了 自助服务入职审批 ,那么将涵盖审批流程。 自助服务加载任务的缺省超时周期为 72 小时。
      请注意,在 Developer Portal中,每天仅清除一次到期的自助服务加载任务。 因此,具有到期加载任务的任何 API 使用者都必须等待这些任务被清除,然后再尝试重新注册。
    7. 要配置 API 使用者邀请合作者并将其分配给角色的能力,请单击 使用者邀请和角色 部分中的 编辑 ,选择所需的选项,然后单击 保存
    8. 要配置在向应用程序开发者发送的电子邮件邀请中发送的激活链接的超时,请单击 邀请超时 部分中的 编辑 ,指定超时长度,然后单击 保存。 邀请链接的缺省超时周期为 48 小时。
    9. 要覆盖使用者组织邀请设置的超时,请将 使用目录邀请超时覆盖使用者组织的邀请超时 设置为 开启

      将改为使用目录自己的超时设置。

    注: 入职目录设置同时适用于 使用者目录开发者门户网站
  11. 要指定用于保护此目录中的 API 访问的用户注册表,以及向沙箱目录添加用户注册表,请完成以下步骤:
    1. 单击 目录设置 选项卡,然后选择 API 用户注册表
    2. 单击 编辑 ,然后选择要使用的用户注册表。
      有关如何配置用户注册表的详细信息,请参阅 使用企业用户注册表进行认证
    3. 完成后单击 保存
    注:
    • 只有 LDAP 和认证 URL 注册表可用于保护 API 访问;因此,仅列示和可选择这些类型的注册表,
    • 如果在目录中启用了空间,那么指定空间的用户注册表, 指定整个目录的用户注册表。 如果在目录中的一个空间中指定用户注册表,那么会将其部署到该目录中的所有空间中的网关服务。

      有关启用和管理空间的更多信息,请参阅 API Connect中使用联合

      .
  12. 要指定可用于保护对此目录中 API 的访问权的 OAuth 提供者 ,请完成以下步骤:
    注:
    • 如果要为目录指定 OAuth 提供者,请确保已将沙箱目录配置为使用相同的 OAuth 提供者
    • 您还必须在目录中启用 OAuth 提供者引用的任何资源(例如 API 用户注册表或 TLS 客户机概要文件)
    • 如果在目录中启用了空间,那么可以为空间指定 OAuth 提供者, 而不是 为整个目录指定 OAuth 提供者。 如果在目录中的一个空间中指定 OAuth 提供者,那么会将其部署到该目录中所有空间中的网关服务。

      有关启用和管理空间的更多信息,请参阅 API Connect中使用联合

    1. 单击目录设置导航窗格中的 OAuth 提供者
    2. 单击 编辑,然后选择要使用的 OAuth 提供者。

      要配置 OAuth 提供者,请参阅使用 Cloud Manager配置本机 OAuth 提供者 或使用 API Manager配置本机 OAuth 提供者

    3. 完成后单击 保存
  13. 要配置用于此目录的 TLS 客户机概要文件,请完成以下步骤:
    注: 如果在目录中启用了空间,那么您将为空间配置 TLS 客户机概要文件, 而不是 为整个目录配置 TLS 客户机概要文件。 如果在目录中的一个空间内配置 TLS 客户机概要文件,那么会将其部署到该目录中所有空间内的网关服务。

    有关启用和管理空间的更多信息,请参阅 API Connect中使用联合

    1. 单击目录设置导航窗格中的 TLS 客户机概要文件
    2. 单击 编辑,然后选择要用于此目录的 TLS 客户机概要文件。
      有关如何创建 TLS 客户机概要文件的详细信息,请参阅 创建 TLS 客户机概要文件
    3. 完成后单击 保存
  14. 您有两个用于与应用程序开发者共享 API 的选项。 使用缺省 使用者目录 来实现轻量级使用者体验; 无定制,基本功能,非常适合小型 API 目录和内部用户。 您不需要 Portal 服务来配置 使用者目录。 有关在 开发者门户网站使用者目录之间进行选择的更多详细信息,请参阅 使用者目录和开发者门户网站注意事项
    要启用 使用者目录,请完成以下步骤:
    1. 单击目录设置导航窗格中的 门户网站 ,然后将 使用者目录 设置为 开启。 显示 《消费者目录 》 URL。
      缺省情况下, 使用者目录 设置为 On
    2. 点击 URL 访问消费者目录
    如果您需要目录的完整内容管理系统,请创建 开发者门户网站; 完全可定制的完整功能,并且是大型 API 目录和业务用户的理想之选。 您需要 Portal 服务来配置 Developer Portal。 要配置 Developer Portal,请完成以下步骤:
    1. 在目录设置导航窗格中单击门户 ,然后单击创建
    2. 请从以下选项中选择门户主机名:
      默认 API Connect 门户主机名:
      使用由 API Connect 提供的系统生成门户主机名。
      • 选择要与该目录关联的门户服务。
      • 该门户 URL 不支持此选项的编辑功能。
      • 该门户使用由 API Connect 管理的主机名和 TLS 证书创建。
      虚荣主机名(使用默认门户证书)
      使用自定义主机名,同时允许 API Connect 管理 TLS 证书。
      • 输入您希望为开发者门户使用的自定义主机名。
      • 在创建门户之前,请确保在DNS中将主机名配置为指向默认门户端点的CNAME记录。
      虚荣主机名(提供自定义证书)
      使用自定义主机名并提供您自己的 TLS 证书。
      • 输入您希望为开发者门户使用的自定义主机名。
      • 提供完整的TLS证书链以及与该主机名关联的私钥。
      • 在创建门户之前,请确保在DNS中将主机名配置为指向默认门户端点的CNAME记录。
      注意: 配置自定义主机名需要进行DNS配置。
      您可以通过以下步骤为门户创建自定义主机名:
      • 在您的 DNS 中创建一个 CNAME 记录,将您的自定义主机名指向实例的默认门户端点。
      • 您可以从选择自定义域名选项时显示的信息框中复制默认门户端点,并使用该端点配置CNAME记录。
        重要说明:
        • 在所有目录中,URL 必须唯一。
        • 资源名称允许使用大小写混合的名称,但门户端点URL必须使用小写字母。
    3. 点击创建以保存您的更改。
    若需编辑门户服务,请返回此门户设置页面并点击编辑。 要删除门户网站,请点击选项图标 “选项”图标,然后点击 “删除 ”。
    注: 目录所有者的帐户概要文件必须具有指定的电子邮件地址才能接收创建通知,否则 Developer Portal 创建操作将失败。 要检查帐户概要文件是否包含电子邮件地址并指定值,请完成以下步骤:
    1. 点击用户图标 "用户" 图标,然后选择 “我的账户 ”。
    2. 检查电子邮件字段的内容并根据需要指定值,然后单击保存
  15. 要定义目录属性,请完成以下步骤:
    1. 单击目录设置导航窗格中的属性 ,然后单击创建
    2. 输入属性名称
    3. 选择受保护复选框对属性进行加密。
      注意: 属性创建为受保护后,仍将保持加密状态。 如果想不加密,请删除该属性,然后在不选择受保护选项的情况下重新创建。
    4. 单击 创建
    可以在此目录中的任何 API 定义中引用您定义的属性。 还可以定义特定于 API 定义的属性; 请参阅 设置 API 属性。 有关如何在 API 定义中引用属性的信息,请参阅 API Connect 中的变量引用
    注:
    • 如果您定义了与 API 属性同名的目录属性,那么 API 属性优先于目录属性。
    • 如果更改目录属性的值,那么必须重新发布引用该属性的任何 API,才能使用新值。
  16. 可选: 若需配置发布到目录或空间的产品可见性,请参阅 《在目录或空间级别配置产品可见性》

后续操作

其他目录选项

您还可以为目录配置以下设置:

  • 转移所有权 -将目录的所有权转移给其他用户。
  • 发布验证 -配置发布产品时执行的发布验证。
  • 配置虚 API 端点 -配置虚 API 端点,以便可以发布与这些网关端点不同的端点。 虚端点表示外部已知 API 的端点; 即,发布到 Developer Portal 并由应用程序开发者用于调用 API 的端点。 如果不配置虚端点,那么这两个端点相同,并指向调用 API 的网关端点。

导入策略

将您自己的策略导入到目录中。 有关详细信息,请参阅 将用户定义的策略导入到目录中

注: 导入策略时,其实现将导入到与托管目录的网关服务相关联的所有 网关 设备中。 此外, API Connect 会修改某些对象名和文件位置,以使用相应的目录名称和策略版本对其进行标记。

有关如何创建和管理 用户定义的策略的更多信息,请参阅 用户定义的策略