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

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

CreateConnector

创建连接器,用于捕获 AS2 协议出站连接的参数。发送文件到外部托管的 AS2 服务器时需要使用连接器。对于 SFTP,向 SFTP 服务器发送文件或从 SFTP 服务器接收文件时,需要连接器。有关连接器的更多详细信息,请参阅配置 AS2 连接器和创建 SFTP 连接器。

注意

您必须只指定一个配置对象:用于 AS2 (As2Config) 或 SFTP (SftpConfig)。

请求语法

{ "AccessRole": "string", "As2Config": { "BasicAuthSecretId": "string", "Compression": "string", "EncryptionAlgorithm": "string", "LocalProfileId": "string", "MdnResponse": "string", "MdnSigningAlgorithm": "string", "MessageSubject": "string", "PartnerProfileId": "string", "SigningAlgorithm": "string" }, "LoggingRole": "string", "SecurityPolicyName": "string", "SftpConfig": { "TrustedHostKeys": [ "string" ], "UserSecretId": "string" }, "Tags": [ { "Key": "string", "Value": "string" } ], "Url": "string" }

请求参数

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

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

AccessRole

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

对于 AS2 连接器

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

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

对于 SFTP 连接器

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

类型:字符串

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

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

必需:是

As2Config

包含连接器对象参数的结构。

类型:As2ConnectorConfig 对象

必需:否

LoggingRole

(IAM) 角色的亚马逊资源名称 Amazon Identity and Access Management (ARN),它允许连接器开启对 Amazon S3 CloudWatch 事件的日志记录。设置后,您可以在 CloudWatch 日志中查看连接器活动。

类型:字符串

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

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

必需:否

SecurityPolicyName

为连接器指定安全策略的名称。

类型:字符串

长度限制:长度下限为 0。最大长度为 100。

模式:TransferSFTPConnectorSecurityPolicy-[A-Za-z0-9-]+

必需:否

SftpConfig

包含 SFTP 连接器对象参数的结构。

类型:SftpConnectorConfig 对象

必需:否

Tags

可用于分组和搜索连接器的键/值对。标签是出于任何目的附加到用户的元数据。

类型:Tag 对象数组

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

必需:否

Url

合作伙伴的 AS2 或 SFTP 端点的 URL。

类型:字符串

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

必需:是

响应语法

{ "ConnectorId": "string" }

响应元素

如果此操作成功,则该服务将会发送回 HTTP 200 响应。

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

ConnectorId

AS2 配置文件的唯一标识符,将在 API 调用成功后返回。

类型:字符串

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

模式:c-([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

示例

示例

以下示例创建 AS2 连接器。在以下命令中,替换以下项目:

  • url:提供贸易伙伴的 AS2 服务器 URL。

  • your-IAM-role-for-bucket-access:IAM 角色,具有您将用于存储文件的 Amazon S3 存储桶访问权限。

  • 使用 ARN 作为您的日志角色,其中包括您 Amazon Web Services 账户 的 ID。

  • 提供包含 AS2 连接器配置参数的文件路径。AS2 连接器配置对象在 A s ConnectorConfig 2 中进行了描述。

// Listing for testAs2Config.json { "LocalProfileId": "your-profile-id", "PartnerProfileId": "partner-profile-id", "MdnResponse": "SYNC", "Compression": "ZLIB", "EncryptionAlgorithm": "AES256_CBC", "SigningAlgorithm": "SHA256", "MdnSigningAlgorithm": "DEFAULT", "MessageSubject": "Your Message Subject" }
aws transfer create-connector --url "http://partner-as2-server-url" \ --access-role your-IAM-role-for-bucket-access \ --logging-role arn:aws:iam::your-account-id:role/service-role/AWSTransferLoggingAccess \ --as2-config file://path/to/testAS2Config.json

示例

以下示例创建 AS2 连接器。在以下命令中,替换以下项目:

  • sftp-server-url:提供您正在与之交换文件的 SFTP 服务器 URL。

  • your-IAM-role-for-bucket-access:IAM 角色,具有您将用于存储文件的 Amazon S3 存储桶访问权限。

  • 使用 ARN 作为您的日志角色,其中包括您 Amazon Web Services 账户 的 ID。

  • 提供包含 AS2 连接器配置参数的文件路径。中描述了 SFTP 连接器配置对象。SftpConnectorConfig

// Listing for testSFTPConfig.json { "UserSecretId": "arn:aws:secretsmanager:us-east-2:123456789012:secret:aws/transfer/example-username-key", "TrustedHostKeys": [ "sftp.example.com ssh-rsa AAAAbbbb...EEEE=" ] }
aws transfer create-connector --url "sftp://sftp-server-url" \ --access-role your-IAM-role-for-bucket-access \ --logging-role arn:aws:iam::your-account-id:role/service-role/AWSTransferLoggingAccess \ --sftp-config file://path/to/testSFTPConfig.json

示例

API 调用返回新连接器的 ID。

示例响应

{ "ConnectorId": "a-11112222333344444" }

另请参阅

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