创建 HTTP 集成

现在,您已经确定了您的 API,让我们将 HTTP 集成添加到微应用服务中。

  1. 微应用集成页面中,选择添加集成
  2. 选择创建到 HTTP Web 服务的新集成以添加配置详细信息。

    HTTP 磁贴

  3. 为您的集成指定一个名称,然后输入您收集的基本 URL。基本 URL 是您将用于此集成的 Web 地址的一致部分。例如 https://app.asana.com/api/1.0/workspaces/${YOUR_WORKSPACE_ID}。将 ${YOUR_WORKSPACE_ID} 替换为您的工作区 ID(例如:419224638481718)。

    每个集成只能添加一个基本 URL。如果您需要更多的基本 URL,则必须创建另一个集成。

    注意:

    尽管 HTTP 和 HTTPS 都允许作为 SaaS 集成的基本 URL,但 HTTP 被认为是一种安全性要低得多的连接方法,您不太可能将其用于目标集成应用程序。本地集成不允许使用 HTTP 基本 URL。

  4. 选择要随集成一起显示的图标 。从预定义的图标集中选择一个,或添加自定义图标。有关添加自定义图标的详细信息,请参阅 添加自定义图标
  5. (可选)要连接到本地记录系统 (SoR),请启用本地实例切换。有关详细信息,请参阅本地实例
  6. 根据需要选择服务身份验证方法和服务操作身份验证。有关详细信息,请参阅设置服务身份验证
  7. (可选)要为您的集成启用速率限制,请选择请求速率限制切换。有关详细信息,请参阅请求速率限制
  8. 选择右上角的添加以保存这些集成配置。现在,您可以继续配置集成。有关详细信息,请参阅配置集成

添加自定义图标

您可以添加自定义图标以更好地识别您的集成。向更广泛的受众发布 HTTP 集成时,图标文件将上传到 Azure CDN 存储,并且可以公开访问。

图标文件必须符合以下参数:

  • 该文件采用 PNG 格式,具有透明背景。
  • 文件的分辨率必须精确为 128x128 像素。
  • 最大文件大小为 80 KB。

注意

自定义图标仅供您概述集成。您不能将它们传播到工作区通知。

要添加图标,请选择“添加图标”,然后选择要上传的文件。

当您导出集成然后将其导入到另一个实例时,该图标将添加到目标实例的自定义图标列表中。

要删除图标,请从图标弹出窗口中选择一个图标,然后单击删除图标。删除图标时,图标不会被删除。集成包含指向该图标的链接,但您无法再次选择该图标。

本地实例

微应用服务允许您连接本地记录系统 (SoR)。本地集成不允许使用 HTTP 基本 URL。要创建本地连接,请先使用 Connector 设备进行连接,然后按照以下步骤收集并添加资源标识符 ID。有关详细信息,请参阅Citrix Cloud Connector 设备

  1. 转到 Citrix Cloud 并使用您的凭据登录。
  2. 登录 Citrix Cloud 后,从菜单中选择资源位置
  3. 选择添加图标 + ,然后从列表中找到您的微应用资源。
  4. 选择 ID,然后将资源标识符 ID 复制到添加 HTTP 集成屏幕的本地实例资源位置字段中。

已配置您的本地集成。

设置服务身份验证

配置 HTTP 集成服务身份验证时,必须使用目标应用程序(记录系统)设置服务帐号。如果使用服务帐户将数据写入应用程序,则还必须在目标应用程序中同时拥有读取和写入权限。收集了目标应用程序的所有必要信息(登录名、密码、安全证书等)后,即可开始服务集成过程。

从以下选项中选择您的身份验证方法:

  • - 无需安全证书。
  • 基本 -使用目标应用程序的用户名和密码进行身份验证。
  • NTLM - 将 HTTP 集成配置为使用一套 Microsoft 协议通过新技术局域网管理器 (NTLM) 身份验证服务器进行连接,以通过 Microsoft Windows 凭据验证 NTLM 用户的身份。
  • 持有者 -将目标集成的身份验证方案配置为使用服务器生成的持有者令牌以响应登录请求。
  • OAuth 2.0 - 使用 OAuth 2.0 安全协议为委派访问生成请求/授权令牌。OAuth 2.0 的实现因系统而异,但 OAuth 2.0 的常规工作流程如下所述。
  • API 密钥 -使用 API 密钥方法对用户、开发人员或调用 API 的程序进行身份验证。

注意:

建议您始终使用 OAuth 2.0 作为服务身份验证方法(如果可用)。OAuth 2.0 可确保您的集成符合您配置的微应用的最大安全合规性。

请按照以下步骤进行操作:

  1. 输入集成的服务身份验证参数。
  2. (可选)对于授权代码授权类型,选择使用您的服务帐户登录并等待登录完成。
  3. (可选)选择服务操作身份验证单选按钮,然后在服务操作级别输入身份验证参数。

    重要:

    如果您正在使用委派权限,则可能不具有完全访问权限。在这种情况下,使用服务操作身份验证在服务操作级别进行身份验证。在这种情况下,您可以在服务级别使用基本身份验证,但出于安全原因,您必须在服务操作级别使用 OAuth 2.0。

  4. 选择添加

OAuth 2.0 身份验证

OAuth 2.0 使应用程序能够获得对第三方应用程序上 HTTP 服务用户帐户的特定访问权限。它的工作原理是将身份验证委托给包含用户帐户的服务,然后授权第三方应用程序访问该用户帐户。

OAuth 回调 URL

用于身份验证的回调 URL 遵循以下模式:

https://{customer_id}.{customer_geo}.iws.cloud.com/admin/api/gwsc/auth/serverContext,
https://{customer_id}.{customer_geo}.iws.cloud.com/app/api/auth/serviceAction/callback

此 URL 的第二部分仅在定义每个用户经过身份验证的操作时使用。客户和地理标识符是不同的,对于每个客户来说都是唯一的。

OAuth 2.0 授权类型

HTTP 集成允许您从三种授权类型中进行选择。设置誓言 2.0 时,请从菜单中选择您的赠款类型。配置 OAuth 2.0 时,我们建议您使用授权码,因为这是最安全的授权流程。如果需要客户端凭据和资源所有者密码授予类型用于其他服务操作身份验证方法,请使用这些授权类型

  • 授权码 -授予客户端交换的临时代码以获取访问令牌。代码从授权服务器获取,您可以在其中查看客户端请求的信息。只有此授权类型才能启用安全用户模拟。
  • 客户端凭据 -授予类型用于获取用户上下文之外的访问令牌。客户端使用这种方法来访问自己的资源,而不是访问用户的资源。
  • 资源所有者密码 -提供正确的凭据以授权资源服务器提供访问令牌。

授权类型输入

根据上面定义的授权类型,您将提供以下选项来完成以启用 OAuth 2.0 身份验证:

  • 令牌 URL -定义访问授权令牌的 URL。
  • 范围 -定义访问请求的范围,这是一个由授权服务器在设置目标集成应用程序时定义的字符串。
  • 客户端 ID -定义表示授权服务器唯一的客户端注册信息的字符串。
  • 客户端密钥 -定义在设置目标应用程序集成时发出的唯一字符串。
  • 用户名 - 定义目标应用程序帐户的用户名。
  • 密码 -定义目标应用程序帐户的密码。
  • 授权 URL -定义在设置目标应用程序集成时提供的授权服务器 URL。
  • 访问令牌参数 -根据需要定义目标应用程序授权服务器所需的访问令牌参数。
  • 使用您的服务帐户登录 - 登录目标应用程序授权服务器的服务帐户。
  • 标题前缀 -(可选)如果持有者前缀与默认标题不同,则输入标题前缀。

有关 OAuth 2.0 的额外资源可以在 OAuth 2.0 的 请求提出问题 页面找到。

OAuth 2.0 疑难解答

如果您在将目标应用程序连接到微应用平台时遇到问题,请根据您自己的配置检查以下可能的解决方案错误:

  • invalid_request -您的授权请求可能会错过必需的参数,包含不受支持的参数值(或其他授权类型),重复参数,包含多个凭据,利用多种机制对客户端进行身份验证。
  • invalid_client -您的客户端身份验证失败,原因如下:未知客户端、未包含客户端身份验证或不支持的身份验证方法。授权服务器可能会返回 HTTP 401(未授权)状态代码,以指示支持哪些 HTTP 身份验证方案。
  • invalid_grant - 授权授予或刷新令牌可能无效、过期、吊销、与授权请求中使用的重定向 URI 不匹配发送给另一客户端。
  • unauthorized_client -未授权经过身份验证的客户端使用此授权授权类型。
  • unsupported_grant_type -授权服务器不支持授权类型。
  • inali_scope -请求的作用域无效、未知、格式错误或超出资源所有者授予的范围。

如果您在配置 OAuth 2.0 时仍遇到问题,请检查您是否为令牌和授权 URL 输入了正确的 URL,因为它们都是唯一的。还要重新检查您的其他输入是否正确,例如 Scope 等。如果问题仍然存在,请检查集成应用程序服务器端的设置。

请求速率限制(可选)

选择请求速率限制以启用集成速率限制。切换后,您可以定义从目标应用程序中提取的请求数和时间间隔(1 秒或 1 分钟)。根据目标应用程序文档中定义的最佳实践/速率限制配置速率限制。

下一步的去向

现在您已经创建了 HTTP 集成,请配置集成:

创建 HTTP 集成