理解连接
连接存储服务或系统(如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-Key
HTTP报头。
旋度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_domain
Value必须是*。
。您不能在主机名的其他部分使用通配符。例如,您不能在主机名中使用通配符,例如禅宗*。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”
} '