请参阅 Application Integration 支持的连接器

创建自定义连接器

本页面介绍了如何创建自定义连接器。如需了解什么是自定义连接器,请参阅自定义连接器

如需使用自定义连接器与后端建立连接,您需要执行以下任务:

  1. 创建自定义连接器 - 在此任务中,您将通过提供端点的 OpenAPI 规范来定义 Application Integration 与端点(后端)之间的合同。目前仅支持 OpenAPI 3.0 版及其所有次要版本。指定该规范属于一次性活动。
  2. 创建自定义连接器连接 - 在此任务中,您将配置后端的连接详细信息,例如主机名和身份验证。对于特定自定义连接器,您可以根据需要创建任意数量的连接。

如需了解连接器与连接之间的区别,请参阅连接器与连接

准备工作

确保创建自定义连接器的用户具有以下任何 IAM 角色

创建自定义连接器

后端连接场景中所述,自定义连接器可以具有以下任一连接模式:

  • 与后端公共端点的直接连接。
  • 通过中间公共端点间接连接到后端。

对于这两种模式,自定义连接器创建步骤略有不同。

创建具有直接连接的自定义连接器

如需创建与后端端点直接连接的自定义连接器,请执行以下步骤:

控制台

  1. 控制台中,转到 Application Integration > 自定义连接器页面,然后选择或创建 Google Cloud 项目。

    转到“自定义连接器”页面

  2. 点击新建,打开创建自定义连接器页面。
  3. 连接器详细信息部分,设置以下字段:
    1. 连接器名称:输入连接器的名称。
    2. 显示名称:输入连接器的显示名称。
    3. 说明:输入说明。
    4. 服务帐号:选择具有所需角色的服务帐号。
    5. 徽标:将图片上传到 Cloud Storage 存储桶,以将其用作连接器徽标。
  4. 点击下一步
  5. 连接器规范部分,设置以下字段:
    1. 自定义连接器类型:选择自定义连接器类型。
    2. 连接器规范:输入 Open API 规范的公开网址,或将您的规范文件上传到 Cloud Storage 存储桶。
  6. 查看连接器配置详细信息,然后点击创建

如果连接器创建成功,则新创建的连接器将显示在 转到“自定义连接器”页面中;如果是新连接器,则还会创建连接器的第一个版本。您可以在自定义连接器详细信息页面的版本标签页中查看版本详细信息。如需了解详情,请参阅

但请注意,要连接到后端,您必须为新创建的连接器创建连接。如需了解详情,请参阅创建自定义连接器连接

API

以下示例命令显示了如何使用 Application Integration API 创建自定义连接器:

  1. 创建连接器。
    curl -X POST \
    -H "authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json"
    -d '{"customConnectorType":"OPEN_API", \
    "displayName":"CUSTOM_CONNECTOR_NAME", \
    "description": "an open api based custom connector for hrms"}' \
    "https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/customConnectors?custom_connector_id=UNIQUE_IDENTIFIER"
    

    替换以下内容:

    • CUSTOM_CONNECTOR_NAME:自定义连接器的名称。
    • PROJECT_ID:您的 Google Cloud 项目的 ID。
    • UNIQUE_IDENTIFIER:连接器的唯一标识符。例如 custom-connector-1
  2. 配置自定义连接器版本。
    curl -X POST \
    -H "authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{"spec_location": "SPECIFICATION_URL",}' \
    "https://connectors.googleapis.comv1/projects/PROJECT_ID/locations/global/customConnectors/openapi-customconnector/customConnectorVersions?custom_connector_version_id=VERSION_NUMBER"
    
  3. 替换以下内容:

    • SPECIFICATION_URL:Open API 规范网址。例如 https://petstore3.swagger.io/api/v3/openapi.json
    • PROJECT_ID:您的 Google Cloud 项目的 ID。
    • VERSION_NUMBER:连接器的版本号。例如 2

创建具有间接连接的自定义连接器

如需创建通过中间端点连接到后端的自定义连接器,请执行以下步骤:

控制台

  1. 控制台中,转到 Application Integration > 自定义连接器页面,然后选择或创建 Google Cloud 项目。

    转到“自定义连接器”页面

  2. 点击新建,打开创建自定义连接器页面。
  3. 连接器详细信息部分,设置以下字段:
    1. 连接器名称:输入连接器的名称。
    2. 显示名称:输入连接器的显示名称。
    3. 说明:输入说明。
    4. 为后端访问配置连接器目标位置:启用此选项。这会显示该页面的其他配置部分。
    5. 服务帐号:选择具有所需角色的服务帐号。
    6. 徽标:将图片上传到 Cloud Storage 存储桶,以将其用作连接器徽标。
  4. 点击下一步
  5. 连接器规范部分,设置以下字段:
    1. 自定义连接器类型:选择自定义连接器类型。
    2. 连接器规范:输入 Open API 规范的公开网址,或将您的规范文件上传到 Cloud Storage 存储桶。
  6. 点击下一步
  7. 连接器目标部分,设置以下字段:
    1. 目标类型:选择主机地址
    2. 主机:输入中间服务运行的主机名。
    3. Port:输入中间服务的端口号。
  8. 点击下一步
  9. 连接器身份验证部分中,选择中间服务的身份验证类型,然后按照提示输入相应的详细信息。此步骤用于配置从 Application Integration 到中间服务的身份验证。

    无法在 Application Integration 中配置从中间服务到后端的身份验证配置;由中间服务决定如何向后端进行身份验证。

  10. 点击下一步
  11. 后端变量部分中,输入您要通过中间服务发送到后端的值。您必须将值配置为键值对 paris。如需输入键值对,请点击添加变量,然后设置以下字段:
    • 密钥:输入密钥名称。
    • 值类型:选择变量的数据类型。
    • 显示名称:输入显示名称。
    • 位置:指定您希望连接器如何将变量发送到中间服务。可用选项包括 HeaderRequest payloadQuery parameter
    • (可选)选择 Required 以指定该变量为必需变量。
  12. 点击下一步
  13. 查看连接器配置详细信息,然后点击创建

如果连接器创建成功,则新创建的连接器将显示在自定义连接器页面中;如果是新连接器,则还会创建连接器的第一个版本。您可以在自定义连接器详细信息页面的版本标签页中查看版本详细信息。如需了解如何创建和修改自定义连接器版本,请参阅管理自定义连接器版本

但请注意,要连接到后端,您必须为新创建的连接器创建连接。如需了解详情,请参阅创建自定义连接器连接

API

以下示例命令显示了如何使用 Application Integration API 创建自定义连接器:

  1. 创建连接器。
    curl -X POST \
    -H "authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json"
    -d '{"customConnectorType":"OPEN_API", \
    "displayName":"CUSTOM_CONNECTOR_NAME", \
    "description": "an open api based custom connector for hrms"}' \
    "https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/customConnectors?custom_connector_id=UNIQUE_IDENTIFIER"
    

    替换以下内容:

    • CUSTOM_CONNECTOR_NAME:自定义连接器的名称。
    • PROJECT_ID:您的 Google Cloud 项目的 ID。
    • UNIQUE_IDENTIFIER:连接器的唯一标识符。例如 custom-connector-1
  2. 配置自定义连接器版本和身份验证。
    curl -X POST \
    -H "authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{"spec_location": "SPECIFICATION_URL", \
    "service_account":"test-sa", \
    "enable_backend_destination_config": true, \
    "auth_config": { \
    "auth_type":"USER_PASSWORD", \
    "auth_key": "basic", \
    "user_password": { \
    "username":"USERNAME", \
    "password": {"secret_version":"projects/PROJECT_ID/secrets/fidelity-secret/versions/SECRET_VERSION_NUMBER"} \
    }}, \
    "backend_variable_templates": [{ \
    "key":"authkey", \
    "value_type":"SECRET", \
    "display_name":"Authorization Key", \
    "required":true, \
    "location_type": "HEADER" \
    }], \
    "destination_configs":[{ \
    "key":"base_url", \
    "destinations": [{ \
    "host":"DESTINATION_HOST_ADDRESS" \
    }]} \
    ]}' \
    "https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/customConnectors/facade-connector/customConnectorVersions?custom_connector_version_id=CONNECTOR_VERSION_NUMBER"
    
  3. 替换以下内容:

    • SPECIFICATION_URL:Open API 规范网址。例如 https://petstore3.swagger.io/api/v3/openapi.json
    • PROJECT_ID:您的 Google Cloud 项目的 ID。
    • USERNAME:用于向中间服务进行身份验证的用户名。
    • SECRET_VERSION_NUMBER:Secret Manager 密钥版本号。例如 2
    • DESTINATION_HOST_ADDRESS:中间服务的主机地址。例如 http://www.test.com:80
    • CONNECTOR_VERSION_NUMBER:自定义连接器版本号。例如 1

创建自定义连接器连接

创建自定义连接器后,要连接到后端,您必须创建自定义连接器类型的连接。以下是创建新连接的简要步骤:

  1. 点击新建,打开创建连接页面。
  2. 位置部分的区域字段中,选择连接的位置。

    如需查看所有受支持区域的列表,请参阅位置

  3. 点击下一步
  4. 连接详情部分,设置以下字段:
    1. 连接器:从可用连接器下拉列表中选择自定义连接器。
    2. 连接器版本:从可用版本的下拉列表中选择一个连接器版本。
    3. Connection name 字段中,输入连接的名称。

      连接名称必须符合以下条件:

      • 连接名称可以使用字母、数字或连字符。
      • 字母必须小写。
      • 连接名称必须以字母开头,以字母或数字结尾。
      • 连接名称不能超过 63 个字符。
    4. (可选)输入连接的说明
    5. (可选)选择启用 Cloud Logging 以启用云日志记录。
    6. 服务帐号:选择具有所需角色的服务帐号。
    7. (可选)配置连接节点设置

      • 节点数下限:输入连接节点数下限。
      • 节点数上限:输入连接节点数上限。

      节点是处理事务的连接单元(或副本)。 连接处理越多事务就需要越多节点,相反,处理越少事务需要越少节点。 如需了解节点如何影响连接器价格,请参阅连接节点的价格。如果未输入任何值,则默认情况下,节点数下限设置为 2(以便提高可用性),节点数上限设置为 50。

    8. (可选)点击添加标签,以键值对的形式向连接添加标签。
  5. 点击下一步
  6. 身份验证部分中,输入后端的身份验证详细信息。
    • 如果您直接连接到后端,Application Integration 会提示您为后端配置身份验证。
    • 如果您通过中间服务间接连接到后端,Application Integration 不会提示您配置身份验证详细信息。创建连接器时,您已经配置了 Application Integration 和中间服务之间的身份验证。Application Integration 不要求您配置中间服务和后端之间的身份验证;由中间服务决定如何向后端进行身份验证。
  7. 点击下一步
  8. 查看连接配置详细信息,然后点击创建

如果连接创建成功,则会列在“所有连接”页面中,并且此连接可用于 Application Integration。您可以通过连接器任务在集成中使用连接。

注意事项

创建自定义连接器时,请注意以下几点:

  • Application Integration 仅支持 OpenAPI 3.0 版及其所有次要版本。
  • 在创建自定义连接器期间,系统不会验证 Open API 规范。当您为自定义连接器创建连接时,Application Integration 会验证规范,如果出现错误,连接将处于 Error 状态。
  • Application Integration 不区分实体和操作。因此,后端的实体和操作都将在您的自定义连接器中被列为 Actions
  • 启用了 VPC Service Controls 的 Google Cloud 项目不支持自定义连接器。
  • Open API 规范端点和后端端点都应可公开访问。这意味着您无法与后端建立专用连接。
  • Open API 规范不支持多部分媒体类型。
  • 您无法修改自定义连接器的版本详情。