连接存储服务或系统(如Slack、Shopify或Zendesk)的凭据。亚博您可以使用连接对ZIS流中的REST API请求进行身份验证。

连接作为资源存储在ZIS连接服务中。亚博电脑端来管理连接连接API

连接类型

每个连接都有对应于身份验证方案或方法的类型。用于创建和管理连接的Connections API端点因其类型而异。

连接类型 连接API端点
API密匙 API密钥连接端点
基本身份验证 基本认证连接端点
不记名的令牌 承载令牌连接端点
OAuth OAuth客户OAuth连接端点。有关使用说明,请参见创建和管理OAuth连接

要查看集成的所有连接,请使用显示连接端点。

创建连接

要创建API密钥、基本身份验证或承载令牌连接,请使用相应的创建端点。

例如创建承载令牌连接请求创建承载令牌连接。

             
旋度https://{subdomain}.zen亚博desk.com/api/services/zis/integrations/{integration}/connections/bearer_token \-H "Authorization: Bearer {access_token}" \-x post \-H 'content-type: application/json' \- d”{“名称”:“example_bearer_token”,“令牌”:“MY_BEARER_TOKEN”,“allowed_domain”:“api.example.com”} '

要创建OAuth连接,必须使用OAuth Connections端点来完成ZIS集成和系统之间的OAuth 2.0流。OAuth连接存储生成的访问令牌。有关说明,请参阅创建和管理OAuth连接

连接名称

一个连接的名字在ZIS集成中必须是唯一的。这适用于各种连接类型。连接名必须为3 ~ 64个字符,只能由大写字母或小写字母、数字、_,-

重要的是:“zend亚博esk”连接名称保留给到zendesk的OAuth连接。

承载令牌和OAuth连接之间的差异

承载令牌和OAuth连接都可以存储OAuth 2.0访问令牌。但是,这些类型支持不同的方法来获取和管理这些令牌。

下表描述了连接类型之间的一些关键区别。

区别 承载令牌连接 Oauth连接
预先存在的访问令牌 仅存储预先存在的令牌 无法存储预先存在的令牌。要存储访问令牌,必须在ZIS集成和系统之间完成OAuth流。连接存储生成的访问令牌
支持的授权类型 支持任何授权类型的访问令牌 支持授权码和客户端凭据授予类型。对于使用授权代码流创建的OAuth连接,还支持刷新令牌授予类型
令牌刷新和续订 仅支持手动令牌刷新和续订 可以自动刷新或更新访问令牌吗

使用连接对ZIS流中的API请求进行身份验证

一个自定义动作允许您在ZIS流中发出REST API请求。控件中指定连接名称connectionName财产。ZIS使用此连接对操作的请求进行身份验证。

例如,下面的自定义操作定义使用名为“zendesk”的连接。亚博

             
“亚博zendesk.get_tickets”{“类型”“子::行动::Http”“属性”{“名称”“亚博zendesk.get_tickets”“定义”{“方法”“获得”“路径”“/ api / v2 / tickets.json”“connectionName”“亚博zendesk”}}}

当动作发出请求时,ZIS在HTTP报头中传递连接的凭据。ZIS根据连接的类型确定报头。

连接类型 HTTP报头
API密匙 在连接中设置header_name财产。
看到API密钥的HTTP头
基本身份验证 授权:基本
不记名的令牌 授权:持票人
OAuth 授权:持票人

API密钥的HTTP头

API密钥连接需要HTTP头名称header_name财产。当自定义操作使用连接对请求进行身份验证时,ZIS将在此标头中传递API密钥。

例如创建API密钥连接请求设置header_name“x-api-key”。当连接用于验证请求时,ZIS传递api_key的值X-API-KeyHTTP报头。

             
旋度https://{subdomain}.zen亚博desk.com/api/services/zis/integrations/{integration}/connections/api_key \-H "Authorization: Bearer {access_token}" \-x post \-H 'content-type: application/json' \- d”{“名称”:“example_api_key”,:“header_name x-api-key”,:“api_key MY_API_KEY”,“allowed_domain”:“api.example.com”} '

许多API使用自定义头来接受API密钥。要获取API请求的适当标头,请查阅API的文档。

头要求

API密钥连接header_name不能超过128个字符。只能包含大写字母、小写字母、数字和以下字符:#+-_|,

您不能使用以下HTTP标头作为header_name价值观:

  • 接受
  • accept-charset
  • 接受编码
  • 接收语言
  • cache - control
  • 连接
  • content-md5
  • 饼干
  • 日期
  • 预计
  • 宿主
  • if-match
  • if - modified - since
  • 具有
  • if-range
  • if-unmodified-since
  • max-forwards
  • 编译指示
  • proxy-authenticate
  • proxy-authorization
  • 范围
  • 服务器
  • 推荐人
  • te
  • 预告片
  • 传输编码
  • 升级
  • 用户代理
  • 通过
  • 警告
  • www-authenticate
  • 头文件以:
    • x-amz -
    • x-amzn -
    • x-forwarded -
    • x-zis -

允许域

API密钥、基本身份验证或承载令牌连接需要在allowed_domain财产。ZIS仅将请求中的连接凭据传递给此主机名。尝试使用与其他主机名的连接将失败。这有助于防止ZIS集成泄露凭证。

以下创建基本认证连接请求为“api.example.com”主机名创建连接。

             
旋度https://{subdomain}.zen亚博desk.com/api/services/zis/integrations/{integration}/connections/basic_auth \-H "Authorization: Bearer {access_token}" \-x post \-H 'content-type: application/json' \- d”{“名称”:“example_basic_auth_john”,“用户名”:“(电子邮件保护)",“密码”:“MY_PASSWORD”,“allowed_domain”:“api.example.com”} '

允许的域需求

一个连接的allowed_domain值不能超过253个字符。子域不能超过63个字符。必须包含合法的域名。

控件中不要指定协议或方案allowed_domain价值。ZIS总是使用anhttps计划。不支持其他方案。

允许的域的通配符

allowed_domain属性支持可选通配符(子域名。这允许您使用与裸域和任何子域的连接。

若要使用通配符子域,则allowed_domainValue必须是*。。您不能在主机名的其他部分使用通配符。例如,您不能在主机名中使用通配符,例如禅宗*。com我的.ze亚博ndesk.com - *

您也不能使用仅带有公共域后缀的通配符,例如* . com* .com.au,或* .myshopify.com。有关公共后缀的列表,请参见公共后缀列表在publicsuffix.org上。

以下创建基本认证连接Request创建一个与“example.com”和“example.com”的任何子域一起工作的连接。

             
旋度https://{subdomain}.zen亚博desk.com/api/services/zis/integrations/{integration}/connections/basic_auth \-H "Authorization: Bearer {access_token}" \-x post \-H 'content-type: application/json' \- d”{“名称”:“example_basic_auth_jane”,“用户名”:“(电子邮件保护)",“密码”:“MY_PASSWORD”,“allowed_domain”:“* .example.com”} '