OpenAPI 帐户详细信息 (针对导入的 API)

要与从 OpenAPI 文档导入的 API 或从 IBM® API Connect发现并导入的 API 建立连接,必须添加用于定义要连接的帐户详细信息的帐户。 您可以通过在 App Connect 仪表板Red Hat® OpenShift® Web 控制台或 CLI 或 Kubernetes CLI 中创建配置对象来定义这些详细信息。

连接到从 OpenAPI 文档导入的 API

如果要部署包含导出的 Designer 流的 BAR 文件,该流将调用从 OpenAPI 文档导入的 API ,那么需要指定用于连接到 API 的详细信息。 用于建立连接的授权方法必须与 App Connect Designer中原始流中使用的帐户的授权方法相匹配。 有关在 App Connect Designer中导入 OpenAPI 文档并连接到这些导入的 API 的信息,请参阅 如何将 IBM App Connect 与从 OpenAPI 文档导入的 API 配合使用

OpenAPI 文档导入的 API 的受支持授权方法

OpenAPI 文档通常包含用于描述如何保护 API 的安全性定义。 在 OpenAPI 2.0中,这些定义包含在 securityDefinitions 对象中,而在 OpenAPI 3.0中,这些定义包含在 components 部分中的 securitySchemes 对象中。 App Connect 支持以下用于连接到导入的 API 的授权方法。

  • 基本认证: 此授权方法通常需要用于向 API 认证以调用其操作的用户名和密码。
    提示: 如果 API 公开可用并且不需要认证,那么您无需指定任何连接详细信息,但必须使用 name 参数以及追加到 openapi. 前缀的 API 名称来指定帐户名称。
  • API 密钥认证: 此授权方法需要生成的凭证, App Connect 在调用 API 操作时必须提供这些凭证以标识自身。 这些凭证可以采用一个或多个安全密钥的形式,例如 API 密钥,访问令牌,客户机标识和客户机密钥。
  • 不记名认证: 此授权方法需要生成的不记名 (安全性) 令牌,用于向 API 进行认证以调用其操作。
  • OAuth 2.0 密码: 此授权方法需要用户名,密码和客户机凭证才能向 API 进行认证以调用其操作。
  • OAuth 2.0 凭证: 此授权方法需要用于向 API 进行认证以调用其操作的客户机凭证。
  • 基本 OAuth 认证: 此授权方法需要访问令牌和刷新令牌以及用于向 API 进行认证以调用其操作的客户机凭证。

App Connect 为每种授权方法提供了一个或多个连接字段或参数,还提供了一组可用于指定以下设置的标准连接字段或参数:

  • 自签名证书
  • 适用于符合 OpenAPI 2.0 规范的 API: 覆盖 API 的基本路径或 API 服务器的主机名和端口
  • 适用于符合 OpenAPI 3.0.x 规范的 API: 服务器的覆盖 URL
  • 与专用网络的连接

用于连接到从 OpenAPI 文档导入的 API 的帐户参数

您可以为从 OpenAPI 文档导入的 API 定义一个或多个帐户。

对于需要的 每个帐户 ,您可以通过以下任何方式指定一组新的帐户详细信息:

  • 如果您正在使用 App Connect 仪表板,请在 创建配置 面板中填写 帐户详细信息 字段,或者在 accounts.yaml 文件中指定帐户参数,然后再将其导入到 创建配置 面板中。 有关更多信息,请参阅 帐户类型
  • 如果要使用 Red Hat OpenShift Web 控制台或 CLI 或 Kubernetes CLI ,请在 accounts.yaml 文件中指定帐户参数,然后使用此配置文件来创建配置对象。 有关更多信息,请参阅 为类型为 "帐户" 的配置对象创建文件

下表中列出了必需和可选的 "帐户" 字段或参数集。

字段 参数 条件 描述

API 名称

 

用户定义的

必需

分配给 App Connect Designer中导入的 API 的名称; 例如, Petstore

在 YAML 定义或 代码 视图中,使用句点 (.) 分隔符将此名称附加到 openapi 关键字; 例如, openapi.Petstore

帐户名称

name

用户定义的

必需

导出的流中使用的 OpenAPI 帐户的名称。

授权类型

authType

BASIC

BASIC_API_KEY

BASIC_BEARER

OAUTH2_PASSWORD

OAUTH2_CREDENTIALS

BASIC_OAUTH

必需

用于用户授权的机制。

用户名

username

用户定义的

仅当 authType 设置为 BASICOAUTH2_PASSWORD时适用。

authType 设置为 BASIC时为可选。

authType 设置为 OAUTH2_PASSWORD时必需。

password 参数结合使用。

有权使用基本认证或 OAuth 2.0 密码认证来访问 API 的用户 (或客户机应用程序) 的名称。

密码

password

用户定义的

仅当 authType 设置为 BASICOAUTH2_PASSWORD时适用。

authType 设置为 BASIC时为可选。

authType 设置为 OAUTH2_PASSWORD时必需。

username 参数结合使用。

使用基本认证或 OAuth 2.0 密码认证进行连接的用户的密码。

API 密钥名称 N

其中 N 表示 123

[此字段未显示在 12.0.10.0-r1 或更低版本的 "仪表板" 实例的 " 表单 " 视图中,因此您需要在 代码 (YAML) 视图中指定参数,如 描述 列中所示。]

apiKeyN

其中 N 表示 123

用户定义的

可选

仅当 authType 设置为 BASIC_API_KEY时适用。

与具有匹配 N 值的 apiKeyValueN 参数结合使用。

端点启用 API 访问或计算 API 使用情况所需的 API 密钥的名称,或者 API 验证请求访问的 App Connect 客户机应用程序的身份所需的任何其他密钥的名称。

OpenAPI 文档的安全方案中使用定义的 name

12.0.10.0-r2 或更高版本的仪表板:

如果只需要一个 API 密钥,那么可以将 API 密钥名称 1 字段留空,然后填写 API 密钥值 1 字段。

如果需要多个 API 密钥,请填写每个密钥/值对的 API 密钥名称 NAPI 密钥值 N 字段。

仅限12.0.10.0-r1 或更低版本的仪表板:

在 " 代码 " (YAML) 视图中,指定 API 密钥和 API 密钥值,如下所示:

apiKeyAuth: MY_API_KEY

示例:
accounts:
  openapi.MyApp:
    - authType: BASIC_API_KEY
      name: Account 1
      credentials:
        acceptSelfSignedCerts: 'false'
        apiKeyAuth: MY_API_KEY
      endpoint: {}

API 密钥值 N

其中 N 表示 123

[此字段未显示在 12.0.10.0-r1 或更低版本的 "仪表板" 实例的 " 表单 " 视图中,因此您需要在 代码 (YAML) 视图中指定参数,如 描述 列中所示。]

apiKeyValueN

其中 N 表示 123

用户定义的

可选

仅当 authType 设置为 BASIC_API_KEY时适用。

与具有匹配 N 值的 apiKeyN 参数结合使用。

API 密钥的相应值。

仅限12.0.10.0-r1 或更低版本的仪表板:

在 " 代码 " (YAML) 视图中,指定 API 密钥和 API 密钥值,如下所示:

apiKeyAuth: MY_API_KEY

示例:
accounts:
  openapi.MyApp:
    - authType: BASIC_API_KEY
      name: Account 1
      credentials:
        acceptSelfSignedCerts: 'false'
        apiKeyAuth: MY_API_KEY
      endpoint: {}

不记名令牌

[此字段未显示在 12.0.10.0-r1 或更低版本的 "仪表板" 实例的 " 表单 " 视图中,因此您需要在 代码 (YAML) 视图中指定参数,如 描述 列中所示。]

bearerToken

用户定义的

可选

仅当 authType 设置为 BASIC_BEARER时适用。

用于向 API 认证的不记名令牌。

仅限12.0.10.0-r1 或更低版本的仪表板:

在 " 代码 " (YAML) 视图中,按如下所示指定不记名令牌:

bearerAuth: MY_BEARER_TOKEN

示例:
accounts:
  openapi.MyApp:
    - authType: BASIC_BEARER
      name: Account 1
      credentials:
        acceptSelfSignedCerts: 'false'
        bearerAuth: MY_BEARER_TOKEN
      endpoint: {}

应用程序客户机标识

clientId

用户定义的

必需

仅当 authType 设置为 OAUTH2_PASSWORDOAUTH2_CREDENTIALSBASIC_OAUTH时适用。

对于 OAUTH2_PASSWORD,请将此参数与 clientSecretclientCredentialsLocation 参数结合使用。

对于 OAUTH2_CREDENTIALSBASIC_OAUTH,请将此参数与 clientSecret 参数结合使用。

用于认证的唯一客户机标识。

应用程序客户机密钥

clientSecret

用户定义的

必需

仅当 authType 设置为 OAUTH2_PASSWORDOAUTH2_CREDENTIALSBASIC_OAUTH时适用。

对于 OAUTH2_PASSWORD,请将此参数与 clientIdclientCredentialsLocation 参数结合使用。

对于 OAUTH2_CREDENTIALSBASIC_OAUTH,请将此参数与 clientId 参数结合使用。

用于认证的客户机密钥。

客户机凭证位置

clientCredentialsLocation

header

form

必需

仅当 authType 设置为 OAUTH2_PASSWORD时适用。

对于 OAUTH2_PASSWORD,请将此参数与 clientIdclientSecret 参数结合使用。

应在 API 请求中传递客户机标识和客户机密钥的位置。 缺省值为 header

访问令牌

accessToken

用户定义的

必需

仅当 authType 设置为 BASIC_OAUTH时适用。

将此参数与 refreshToken 参数结合使用。

从客户机标识和客户机密钥生成的访问令牌。

刷新令牌

refreshToken

用户定义的

必需

仅当 authType 设置为 BASIC_OAUTH时适用。

将此参数与 accessToken 参数结合使用。

从客户机标识和客户机密钥生成的刷新令牌。

允许自签名证书

acceptSelfSignedCerts

true

false

可选

如果您希望能够接受可信且仅在非生产环境中使用的自签名证书,请将此值设置为 true。 缺省值为 false

覆盖 API 的基本路径

basePath

用户定义的

可选

URL ,用于覆盖定义中的基本路径。 OpenAPI 定义。 基本路径是 API 的初始 URL 段,由 API 中的所有操作共享。

覆盖 API 服务器的主机名和端口

endpointUrl

用户定义的

连接到专用网络时必需。 与 agentId 参数结合使用。

URL 包括协议、主机名或 IP 地址以及端口号,格式为 http://host:porthttps://host:port。 使用此值可覆盖 API 端点的主机和端口(定义中已定义)。 OpenAPI 定义中定义的 API 端点的主机和端口,并使用指向公开可用或受保护端点的值。

  • 如果要使用指向公共可用端点的值覆盖 API 端点的主机和端口,请在 endpointUrl中指定覆盖值。 (省略 agentId 参数。)

    部署集成时, OpenAPI 定义中的主机和端口将被指定的主机和端口覆盖。 此设置使您 (或多个用户) 能够使用同一流程,通过设置具有不同覆盖 URL 的多个帐户来调用 API 的不同或定制端点。

  • 如果要使用指向专用网络中的端点的值覆盖 API 端点的主机和端口 (例如,位于本地位置的防火墙后面) ,那么需要配置专用网络连接, App Connect 将使用该连接来安全地访问该端点。

    创建并运行流时, OpenAPI 定义中的主机和端口将被生成的 目标 主机和端口覆盖,这使 API 请求能够通过专用网络连接路由到受保护端点。

专用网络连接

agentId

用户定义的

连接到专用网络时必需。 与 endpointUrl 参数结合使用。

App Connect 用于连接到专用网络的专用网络连接的名称。 在 专用网络连接 页面中创建专用网络连接。 (仅当为此仪表板实例配置了交换机服务器时,才会看到此字段。) 有关创建和配置专用网络连接的信息,请参阅 从 App Connect 仪表板连接到专用网络。 (在 App Connect 仪表板 12.0.10.0-r1 或包含此字段的较早实例中,显示名称显示为 代理程序名称。)

示例: 指定从 OpenAPI 文档导入的 API 的连接详细信息

请记住: 定义一个或多个帐户的 accounts.yaml 文件必须始终以以下行开头:
accounts:

示例 1 (连接到名为 Petstore的 API 的未认证公共端点):
  openapi.Petstore:
    - authType: BASIC
      name: Account 1
      credentials:
        acceptSelfSignedCerts: 'false'
      endpoint: {}
示例 2 (用于连接到具有覆盖基本路径的名为 Petstore 的 API 的基本认证):
  openapi.Petstore:
    - authType: BASIC
      name: Account 1
      credentials:
        username: memyselfandI
        password: t0pSecret
        acceptSelfSignedCerts: 'false'
        basePath: /api/v2
      endpoint: {}
示例 3 (用于连接到专用网络中名为 Petstore 的 API 的基本认证):
  openapi.Petstore:
    - authType: BASIC
      name: Account 1
      credentials:
        username: memyselfandI
        password: t0pSecret
        acceptSelfSignedCerts: 'false'
        agentId: pnc-mon-27-nov-2023-22-07-45-gmt-592
      endpoint:
        endpointUrl: 'https://private.example.com:1234'
示例 4 (用于使用单个 API 密钥和覆盖基本路径连接到名为 Petstore 的 API 的 API 密钥认证):
  openapi.Petstore:
    - authType: BASIC_API_KEY
      name: Account 1
      credentials:
        apiKey1: apiKeyName
        apiKeyValue1: value
        acceptSelfSignedCerts: 'false'
        basePath: /api/v2
      endpoint: {}
示例 5 (用于连接到具有多个 API 密钥以及覆盖主机和端口的名为 Petstore 的 API 的 API 密钥认证):
  openapi.Petstore:
    - authType: BASIC_API_KEY
      name: Account 1
      credentials:
        apiKey1: apiKeyName1
        apiKeyValue1: value1
        apiKey2: apiKeyName2
        apiKeyValue2: value2
        apiKey3: apiKeyName3
        apiKeyValue3: value3
        acceptSelfSignedCerts: 'false'
      endpoint:
        endpointUrl: 'https://myapi.example.com:1234'
示例 6 (用于使用单个 API 密钥在专用网络中连接到名为 Petstore 的 API 的 API 密钥认证):
  openapi.Petstore:
    - authType: BASIC_API_KEY
      name: Account 1
      credentials:
        apiKey1: apiKeyName
        apiKeyValue1: value
        acceptSelfSignedCerts: 'false'
        agentId: pnc-mon-27-nov-2023-22-07-45-gmt-592
      endpoint:
        endpointUrl: 'https://private.example.com:1234'
示例 7 (用于连接到具有覆盖基本路径的名为 Petstore 的 API 的不记名令牌认证):
  openapi.Petstore:
    - authType: BASIC_BEARER
      name: Account 1
      credentials:
        bearerToken: ABcde-12345
        acceptSelfSignedCerts: 'false'
        basePath: /api/v2
      endpoint: {}
示例 8 (用于连接到专用网络中名为 Petstore 的 API 的不记名令牌认证):
  openapi.Petstore:
    - authType: BASIC_BEARER
      name: Account 1
      credentials:
        bearerToken: ABcde-12345
        acceptSelfSignedCerts: 'false'
        agentId: pnc-mon-27-nov-2023-22-07-45-gmt-592
      endpoint:
        endpointUrl: 'https://private.example.com:1234'
示例 9 (OAuth 2.0 用于连接到具有覆盖基本路径的名为 Petstore 的 API 的密码认证):
  openapi.Petstore:
    - authType: OAUTH2_PASSWORD
      name: Account 1
      credentials:
        username: memyselfandI
        password: t0pSecret
        clientId: uniqueclientID
        clientSecret: myClientSecret
        clientCredentialsLocation: header
        acceptSelfSignedCerts: 'false'
        basePath: /api/v2
      endpoint: {}
示例 10 (用于连接到专用网络中名为 Petstore 的 API 的 OAuth 2.0 密码认证):
  openapi.Petstore:
    - authType: OAUTH2_PASSWORD
      name: Account 1
      credentials:
        username: memyselfandI
        password: t0pSecret
        clientId: uniqueclientID
        clientSecret: myClientSecret
        clientCredentialsLocation: header
        acceptSelfSignedCerts: 'false'
        agentId: pnc-mon-27-nov-2023-22-07-45-gmt-592
      endpoint:
        endpointUrl: 'https://private.example.com:1234'
示例 11 (用于连接到具有覆盖基本路径的名为 Petstore 的 API 的 OAuth 2.0 凭证认证):
  openapi.Petstore:
    - authType: OAUTH2_CREDENTIALS
      name: Account 1
      credentials:
        clientId: uniqueclientID
        clientSecret: myClientSecret
        acceptSelfSignedCerts: 'false'
        basePath: /api/v2
      endpoint: {}
示例 12 (用于连接到专用网络中名为 Petstore 的 API 的 OAuth 2.0 凭证认证):
  openapi.Petstore:
    - authType: OAUTH2_CREDENTIALS
      name: Account 1
      credentials:
        clientId: uniqueclientID
        clientSecret: myClientSecret
        acceptSelfSignedCerts: 'false'
        agentId: pnc-mon-27-nov-2023-22-07-45-gmt-592
      endpoint:
        endpointUrl: 'https://private.example.com:1234'
示例 13 (用于通过覆盖基本路径连接到名为 Petstore 的 API 的基本 OAuth 认证):
  openapi.Petstore:
    - authType: BASIC_OAUTH
      name: Account 1
      credentials:
        clientId: uniqueclientID
        clientSecret: myClientSecret
        accessToken: abcde-XYZ-12345
        refreshToken: fGHIjk-09LkjH-45d
        acceptSelfSignedCerts: 'false'
        basePath: /api/v2
      endpoint: {}
示例 14 (用于连接到专用网络中名为 Petstore 的 API 的基本 OAuth 认证):
  openapi.Petstore:
    - authType: BASIC_OAUTH
      name: Account 1
      credentials:
        clientId: uniqueclientID
        clientSecret: myClientSecret
        accessToken: abcde-XYZ-12345
        refreshToken: fGHIjk-09LkjH-45d
        acceptSelfSignedCerts: 'false'
        agentId: pnc-mon-27-nov-2023-22-07-45-gmt-592
      endpoint:
        endpointUrl: 'https://private.example.com:1234'

连接到从 API Connect 发现和导入的 API

如果要部署包含导出的 Designer 流的 BAR 文件,该流调用从 API Connect发现和导入的 API ,那么需要指定用于连接到 API 的详细信息。 用于建立连接的授权方法必须与 App Connect Designer中原始流中使用的帐户的授权方法相匹配。 有关从 API Connect中发现和导入 API 以及在 App Connect Designer中连接到这些导入的 API 的信息,请参阅 How to use IBM App Connect to discover and import APIs from IBM API Connect

API Connect 发现和导入的 API 的受支持授权方法

API Connect 中创建的 API 通常包含用于描述如何保护 API 的安全性定义。 如果 API 定义符合 OpenAPI 2.0 规范,那么安全性定义包含在 securityDefinitions 对象中。 如果 API 定义符合 OpenAPI 3.0.x 规范,那么这些定义将包含在 components 部分的 securitySchemes 对象中。 虽然 API Connect 支持多个安全性定义或方案,但 App Connect 仅支持以下用于连接到导入的 API 的授权方法。

  • API 密钥认证: 此授权方法需要生成的凭证, App Connect 在调用 API 操作时必须提供这些凭证以标识自身。 这些凭证采用客户机标识和客户机密钥的形式。

App Connect 提供了此授权方法的连接字段或参数,还提供了一组可用于指定以下设置的标准连接字段或参数:

  • 自签名证书
  • 适用于符合 OpenAPI 2.0 规范的 API: 覆盖 API 的基本路径或 API 服务器的主机名和端口
  • 适用于符合 OpenAPI 3.0.x 规范的 API: 服务器的覆盖 URL
  • 与专用网络的连接

用于连接到从 API Connect 发现和导入的 API 的帐户参数

您可以为发现并从 API Connect导入的 API 定义一个或多个帐户。

对于需要的 每个帐户 ,您可以通过以下任何方式指定一组新的帐户详细信息:

  • 如果您正在使用 App Connect 仪表板,请在 创建配置 面板中填写 帐户详细信息 字段,或者在 accounts.yaml 文件中指定帐户参数,然后再将其导入到 创建配置 面板中。 有关更多信息,请参阅 帐户类型
  • 如果要使用 Red Hat OpenShift Web 控制台或 CLI 或 Kubernetes CLI ,请在 accounts.yaml 文件中指定帐户参数,然后使用此配置文件来创建配置对象。 有关更多信息,请参阅 为类型为 "帐户" 的配置对象创建文件

下表中列出了必需和可选的 "帐户" 字段或参数集。

字段 参数 条件 描述

API 名称

 

用户定义的

必需

分配给 App Connect Designer中导入的 API 的名称; 例如, WeatherAPI

在 YAML 定义或 代码 视图中,使用句点 (.) 分隔符将此名称附加到 openapi 关键字; 例如, openapi.WeatherAPI

帐户名称

name

用户定义的

必需

导出的流中使用的已导入 API 帐户的名称。

授权类型

authType

BASIC_API_KEY

必需

用于用户授权的机制。

API 密钥名称 1

apiKey1

X-IBM-Client-Id

可选

apiKeyValue1 参数结合使用。

用于认证的唯一客户机标识。 此设置等同于在 Designer 中为帐户显示的 X-IBM-Client-Id 字段名称。

将此值设置为 X-IBM-Client-Id

API 密钥值 1

apiKeyValue1

用户定义的

可选

apiKey1 参数结合使用。

客户机标识的相应值。 (您可以在 App Connect Designer中指定为帐户生成的客户机标识。)

API 密钥名称 2

apiKey2

X-IBM-Client-Secret

可选

apiKeyValue2 参数结合使用。

用于认证的客户机密钥。 此设置等同于在 Designer 中为帐户显示的 X-IBM-Client-Secret 字段名称。

将此值设置为 X-IBM-Client-Secret

API 密钥值 2

apiKeyValue2

用户定义的

可选

apiKey2 参数结合使用。

客户机密钥的相应值。 (您可以在 App Connect Designer中指定为帐户生成的客户机密钥。)

允许自签名证书

acceptSelfSignedCerts

true

false

可选

如果您希望能够接受可信且仅在非生产环境中使用的自签名证书,请将此值设置为 true。 缺省值为 false

覆盖 API 的基本路径

basePath

用户定义的

可选

URL 用来覆盖 API 定义中的基本路径。 基本路径是 API 的初始 URL 段,由 API 中的所有操作共享。

覆盖 API 服务器的主机名和端口

endpointUrl

用户定义的

连接到专用网络时必需。 与 agentId 参数结合使用。

URL 包括协议、主机名或 IP 地址以及端口号,格式为 http://host:porthttps://host:port。 如果要使用不同于为运行 API 的网关服务定义的 API 端点的主机地址来访问 API ,请使用此值。

  • 如果要使用指向公共可用端点的值覆盖 API 端点的主机和端口,请在 endpointUrl中指定覆盖值。 (省略 agentId 参数。)

    部署集成时,将使用指定的协议,主机和端口覆盖 API 端点的 https://gateway_service_host 段。 此设置使您 (或多个用户) 能够使用同一流程,通过设置具有不同覆盖 URL 的多个帐户来调用 API 的不同或定制端点。

  • 如果要使用指向专用网络中的端点的值覆盖 API 端点的主机和端口 (例如,位于本地位置的防火墙后面) ,那么需要配置专用网络连接, App Connect 将使用该连接来安全地访问该端点。

    部署集成时,将覆盖 API 端点的 https://gateway_service_host 段,并通过专用网络连接将 API 请求路由到受保护端点。

专用网络连接

agentId

用户定义的

连接到专用网络时必需。 与 endpointUrl 参数结合使用。

App Connect 用于连接到专用网络的专用网络连接的名称。 在 专用网络连接 页面中创建专用网络连接。 (仅当为此仪表板实例配置了交换机服务器时,才会看到此字段。) 有关创建和配置专用网络连接的信息,请参阅 从 App Connect 仪表板连接到专用网络。 (在 App Connect 仪表板 12.0.10.0-r1 或包含此字段的较早实例中,显示名称显示为 代理程序名称。)

示例: 指定从 API Connect 发现和导入的 API 的连接详细信息

请记住: 定义一个或多个帐户的 accounts.yaml 文件必须始终以以下行开头:
accounts:

示例 1 (用于使用客户机标识和客户机密钥连接到名为 WeatherAPI 的 API 的 API 密钥认证):
  openapi.WeatherAPI:
    - authType: BASIC_API_KEY
      name: Account 1
      credentials:
        apiKey1: X-IBM-Client-Id
        apiKeyValue1: clientID-Value
        apiKey2: X-IBM-Client-Secret
        apiKeyValue2: client-secret
        acceptSelfSignedCerts: 'false'
      endpoint: {}
示例 2 (用于连接到具有客户机标识,客户机密钥和覆盖基本路径的名为 WeatherAPI 的 API 的 API 密钥认证):
  openapi.WeatherAPI:
    - authType: BASIC_API_KEY
      name: Account 1
      credentials:
        apiKey1: X-IBM-Client-Id
        apiKeyValue1: clientID-Value
        apiKey2: X-IBM-Client-Secret
        apiKeyValue2: client-secret
        acceptSelfSignedCerts: 'false'
        basePath: /api/v2
      endpoint: {}
示例 3 (用于连接到具有客户机标识,客户机密钥以及覆盖主机和端口的名为 WeatherAPI 的 API 的 API 密钥认证):
  openapi.WeatherAPI:
    - authType: BASIC_API_KEY
      name: Account 1
      credentials:
        apiKey1: X-IBM-Client-Id
        apiKeyValue1: clientID-Value
        apiKey2: X-IBM-Client-Secret
        apiKeyValue2: client-secret
        acceptSelfSignedCerts: 'false'
      endpoint:
        endpointUrl: 'https://myapi.example.com:1234'
示例 4 (用于使用客户机标识和客户机密钥以及在专用网络中连接到名为 WeatherAPI 的 API 的 API 密钥认证):
  openapi.WeatherAPI:
    - authType: BASIC_API_KEY
      name: Account 1
      credentials:
        apiKey1: X-IBM-Client-Id
        apiKeyValue1: clientID-Value
        apiKey2: X-IBM-Client-Secret
        apiKeyValue2: client-secret
        acceptSelfSignedCerts: 'false'
        agentId: pnc-mon-27-nov-2023-22-07-45-gmt-592
      endpoint:
        endpointUrl: 'https://private.example.com:1234'