CreateAgreement - Amazon Transfer Family
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

CreateAgreement

创建协议。协议是 Amazon Transfer Family 服务器和AS2进程之间的双边贸易伙伴协议或伙伴关系。该协议定义了服务器和AS2进程之间的文件和消息传输关系。为了定义协议,Transfer Family 结合了服务器、本地配置文件、合作伙伴配置文件、证书和其他属性。

合作伙伴与标识PartnerProfileId,AS2流程标识为LocalProfileId

请求语法

{ "AccessRole": "string", "BaseDirectory": "string", "Description": "string", "LocalProfileId": "string", "PartnerProfileId": "string", "ServerId": "string", "Status": "string", "Tags": [ { "Key": "string", "Value": "string" } ] }

请求参数

有关所有操作的通用参数的信息,请参阅通用参数

该请求接受以下JSON格式的数据。

AccessRole

连接器用于使用AS2或SFTP协议发送文件。对于访问角色,请提供要使用的 Amazon Identity and Access Management 角色的 Amazon 资源名称 (ARN)。

用于AS2连接器

使用AS2,您可以通过调用请求参数StartFileTransfer并在请求参数中指定文件路径来发送文件SendFilePaths。我们使用该文件的父目录(例如,for--send-file-paths /bucket/dir/file.txt,父目录是/bucket/dir/)来临时存储已处理的AS2消息文件,存储我们从合作伙伴那里收到消息的时间,并写入包含传输相关元数据的最终JSON文件。MDN因此,AccessRole 需要提供对 StartFileTransfer 请求中所使用文件位置父目录的读取和写入权限。此外,您还需要提供对您想要使用 StartFileTransfer 发送的文件父目录的读取和写入权限。

如果您对AS2连接器使用基本身份验证,则访问角色需要密钥的secretsmanager:GetSecretValue权限。如果使用客户管理的密钥而不是 Secrets Manager 中的 Amazon 托管密钥对密钥进行加密,则该角色还需要该密钥的kms:Decrypt权限。

用于SFTP连接器

因此, 确保提供对 StartFileTransfer 请求中所使用文件位置父目录的读取和写入权限。此外,请确保该角色向提供secretsmanager:GetSecretValue权限 Amazon Secrets Manager。

类型:字符串

长度约束:最小长度为 20。最大长度为 2048。

模式:arn:.*role/\S+

必需:是

BaseDirectory

使用AS2协议传输的文件的登录目录(文件夹)。

BaseDirectory 示例为 /DOC-EXAMPLE-BUCKET/home/mydirectory

类型:字符串

长度约束:最小长度为 0。最大长度为 1024。

模式:(|/.*)

必需:是

Description

用于识别协议的名称或简短描述。

类型:字符串

长度限制:最小长度为 1。最大长度为 200。

模式:[\p{Graph}]+

必需:否

LocalProfileId

AS2本地配置文件的唯一标识符。

类型:字符串

长度限制:固定长度为 19。

模式:p-([0-9a-f]{17})

必需:是

PartnerProfileId

协议中使用的合作伙伴配置文件的唯一标识符。

类型:字符串

长度限制:固定长度为 19。

模式:p-([0-9a-f]{17})

必需:是

ServerId

服务器实例的系统分配的唯一标识符。此标识符表示协议使用的特定服务器。

类型:字符串

长度限制:固定长度为 19。

模式:s-([0-9a-f]{17})

必需:是

Status

协议的状态。协议可以是 ACTIVEINACTIVE

类型:字符串

有效值:ACTIVE | INACTIVE

必需:否

Tags

可用于分组和搜索协议的键/值对。

类型:Tag 对象数组

数组成员:最少 1 个物品。最多 50 项。

必需:否

响应语法

{ "AgreementId": "string" }

响应元素

如果操作成功,服务将发回 HTTP 200 响应。

以下数据由服务以JSON格式返回。

AgreementId

协议的唯一标识符。使用此 ID 删除或更新协议,以及任何其他需要您指定协议 ID 的API调用。

类型:字符串

长度限制:固定长度为 19。

模式:a-([0-9a-f]{17})

错误

有关所有操作的常见错误的信息,请参阅常见错误

InternalServiceError

当 Amazon Transfer Family 服务中发生错误时,会引发此异常。

HTTP状态码:500

InvalidRequestException

当客户端提交格式错误的请求时,会引发此异常。

HTTP状态码:400

ResourceExistsException

请求的资源不存在,或者存在于为命令指定的区域以外的区域。

HTTP状态码:400

ResourceNotFoundException

当 Transfer Family 服务找不到资源时,就会 Amazon引发此异常。

HTTP状态码:400

ServiceUnavailableException

请求失败,因为 Trans Amazon fer Family 服务不可用。

HTTP状态码:500

ThrottlingException

由于请求限制而导致请求被拒绝。

HTTP状态码:400

示例

示例

以下示例创建了协议,并返回协议 ID。

aws transfer create-agreement --server-id s-021345abcdef6789 --local-profile-id p-1234567890abcdef0 --partner-profile-id p-abcdef01234567890 --base-folder /DOC-EXAMPLE-BUCKET/AS2-files --access-role arn:aws:iam::111122223333:role/AS2-role

示例响应

API调用返回新协议的协议 ID。

{ "AgreementId": "a-11112222333344444" }

另请参阅

有关API在一种特定语言中使用此功能的更多信息 Amazon SDKs,请参阅以下内容: