创建启用 AS2 的服务器配置 - Amazon Transfer Family
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

创建启用 AS2 的服务器配置

适用性声明 2 (AS2) 是 RFC 定义的文件传输规范,包括强大的消息保护和验证机制。AS2 协议对于具有合规性要求的工作流至关重要,这些工作流程依赖于协议中内置数据保护和安全功能。

零售、生命科学、制造业、金融服务和公用事业等行业中依赖 AS2 处理供应链、物流和支付工作流程的客户可以使用Amazon Transfer FamilyAS2 端点可安全地与其业务合作伙伴进行交易。交易后的数据可以在本地访问Amazon用于处理、分析和机器学习。这些数据还可用于与运行的企业资源规划 (ERP) 和客户关系管理 (CRM) 系统集成Amazon. 使用 AS2,客户可以运行他们的 business-to-business (B2B) 大规模交易Amazon同时保持现有业务合作伙伴的集成和合规性。

如果您是 Transfer Family 客户,想要与配置了支持 AS2 的服务器的合作伙伴交换文件,则设置包括生成一个用于加密的公私key pair 和另一个用于与合作伙伴签名和交换公钥的公钥对。

保护传输中的 AS2 负载通常涉及使用加密消息语法 (CMS),通常使用加密和数字签名来提供数据保护和对等身份验证。签名的消息处置通知 (MDN) 响应负载可验证(不可否认性)消息已收到并成功解密。

这些 CMS 有效负载和 MDN 响应的传输是通过 HTTP 进行的。

注意

目前不支持 HTTPS AS2 服务器端点。TLS 的终止目前由客户负责。

要创建启用 AS2 的服务器,还必须指定以下组件:

  • 协议— 双边贸易伙伴协议,或伙伴关系,定义交换消息(文件)的双方之间的关系。为了定义协议,Transfer Family 合并了服务器、本地配置文件、合作伙伴配置文件和证书信息。Transfer Family AS2 入站流程使用协议。

  • Certificates公钥 (X.509) 证书在 AS2 通信中用于消息加密和验证。证书也用于连接器端点。

  • 本地资料和合作伙伴简介— 一个本地配置文件定义本地(启用 AS2 的 Transfer Family 服务器)组织或 “派对”。同样,一个合作伙伴档案定义了 Transfer Family 之外的远程合作伙伴组织。

虽然并非所有启用 AS2 的服务器都需要,但对于出站传输,您需要连接器. 连接器捕获出站连接的参数。连接器是向客户的外部发送文件所必需的,不是这样Amazon服务器。

下图显示了入站和出站流程中涉及的 AS2 对象之间的关系。


            该图显示了入站和出站流程中涉及的 AS2 对象之间的关系。

对于 end-to-end AS2 配置示例,请参阅为 AS2 启用您的服务器端点.

AS2 使用案例

如果您是一个Amazon Transfer Family想要与已配置 AS2 服务器的合作伙伴交换文件的客户,设置中最复杂的部分包括生成一个用于加密的公私key pair 和另一个用于与合作伙伴签名和交换公钥的公钥对。


                该图显示了使用公私密钥对进行加密和签名的情况。

请考虑以下变体使用Amazon Transfer Family使用 AS2。

注意

所有提及伙计在下表中假设已签署mdNS。

仅限入站的用例

  • 将加密的 AS2 消息从合作伙伴传输到 Transfer Family 服务器。

    在此情况下,您可以执行以下操作:

    1. 为您的伴侣和您自己创建个人资料。

    2. 创建使用 AS2 协议的Transfer Family 服务器。

    3. 创建协议并将其添加到您的服务器。

    4. 导入带有私钥的证书并将其添加到您的配置文件中,然后将公钥发送给您的合作伙伴进行加密。

    5. 获得这些物品后,将证书的公钥发送给您的贸易伙伴。

    现在,您的合作伙伴可以向您发送加密消息,您可以解密这些消息并将其存储在您的 Amazon S3 存储桶中。

  • 将加密的 AS2 消息从合作伙伴传输到 Transfer Family 服务器并添加签名。

    在这种情况下,你仍然只进行入站转账,但现在你想让你的伙伴在他们发送的消息上签名。在这种情况下,导入合作伙伴的签名公钥(作为添加到合作伙伴配置文件中的签名证书)。

  • 将加密的 AS2 消息从合作伙伴传输到 Transfer Family 服务器,并添加签名和发送 MDN 响应。

    在这种情况下,您仍然只进行入站转账,但是现在,除了接收签名的有效负载外,您的交易伙伴还希望收到已签名的MDN响应。

    1. 导入您的公有和私有签名密钥(作为签名证书到您的个人资料)。

    2. 将公共签名密钥发送给您的合作伙伴。

仅限出库用例

  • 将加密的 AS2 消息从 Transfer Family 服务器传输到合作伙伴。

    此案例与 “仅限入站转移” 用例类似,不同之处在于您创建的不是向 AS2 服务器添加协议,而是创建连接器。在这种情况下,您可以将合作伙伴的公钥导入他们的个人资料。

  • 将加密的 AS2 消息从 Transfer Family 服务器传输到合作伙伴并添加签名。

    您仍然只进行出站转账,但现在您的伴侣希望您在发送给他们的消息上签名。

    1. 导入您的签名私钥(作为添加到您的个人资料的签名证书)。

    2. 将您的公钥发送给您的伴侣。

  • 将加密的 AS2 消息从 Transfer Family 服务器传输到合作伙伴,然后添加签名并发送 MDN 响应。

    您仍然只能进行出站传输,但是现在,除了发送签名的有效负载外,您还希望收到合作伙伴签名的 MDN 响应。

    1. 您的合作伙伴向您发送了他们的公共签名密钥。

    2. 导入合作伙伴的公钥(作为添加到合作伙伴个人资料中的签名证书)。

入站和出库用例

  • 在 Transfer Family 服务器和合作伙伴之间双向传输加密的 AS2 消息。

    在此情况下,您可以执行以下操作:

    1. 为您的伴侣和您自己创建个人资料。

    2. 创建使用 AS2 协议的Transfer Family 服务器。

    3. 创建协议并将其添加到您的服务器。

    4. 创建连接器。

    5. 导入带有私钥的证书并将其添加到您的配置文件中,然后将公钥发送给您的合作伙伴进行加密。

    6. 从您的合作伙伴那里获得公钥并将其添加到他们的个人资料中进行加密。

    7. 获得这些物品后,将证书的公钥发送给您的贸易伙伴。

    现在,您和您的交易伙伴可以交换加密消息,并且您都可以解密它们。您可以将收到的消息存储在 Amazon S3 存储桶中,您的合作伙伴可以解密和存储您发送给他们的消息。

  • 在 Transfer Family 服务器和合作伙伴之间双向传输加密的 AS2 消息并添加签名。

    现在你和你的伴侣想要签名的消息。

    1. 导入您的签名私钥(作为添加到您的个人资料的签名证书)。

    2. 将您的公钥发送给您的伴侣。

    3. 导入合作伙伴的签名公钥并将其添加到他们的个人资料中。

  • 在 Transfer Family 服务器和合作伙伴之间双向传输加密的 AS2 消息,添加签名并发送 MDN 响应。

    现在,你想交换签名的有效负载,你和你的伙伴都想要 MDN 响应。

    1. 您的合作伙伴向您发送了他们的公共签名密钥。

    2. 导入合作伙伴的公钥(作为合作伙伴个人资料的签名证书)。

    3. 将您的公有密钥发送给您的合作伙伴。

AS2 入库流程

入站流程被定义为正在传输到您的消息或文件Amazon Transfer Family服务器。入站消息的顺序如下:

  1. 管理员或自动进程在合作伙伴的远程 AS2 服务器上启动 AS2 文件传输。

  2. 合作伙伴的远程 AS2 服务器对文件内容进行签名和加密,然后向 Transfer Family 上托管的 AS2 入站端点发送 HTTP POST 请求。

  3. 使用服务器、合作伙伴、证书和协议的配置值,Transfer Family 解密并验证 AS2 负载。文件内容存储在配置的 Amazon S3 文件存储中。

  4. 签名的 MDN 响应要么与 HTTP 响应内联返回,要么通过单独的 HTTP POST 请求异步返回到原始服务器。

  5. 审计记录已写入亚马逊 CloudWatch 包括有关交易所的详细信息。

  6. 解密后的文件可在名为的文件夹中找到inbox/processed.


                该图显示了入站消息的处理顺序。

AS2 出库流程

出站进程被定义为从中发送的消息或文件Amazon到外部客户机或服务。出站消息的顺序如下:

  1. 管理员打电话给start-file-transfer Amazon Command Line Interface(Amazon CLI) 命令或StartFileTransferAPI 操作。此操作引用了connector配置。

  2. Transfer Family 检测到新的文件请求并找到该文件。文件经过压缩、签名和加密。

  3. 传输 HTTP 客户端执行 HTTP POST 请求,将有效负载传输到合作伙伴的 AS2 服务器。

  4. 该进程返回已签名的 MDN 响应,与 HTTP 响应(同步 MDN)一致。

  5. 当文件在不同的传输阶段之间移动时,该过程会将 MDN 响应收据和处理详细信息传送给客户。

  6. 远程 AS2 服务器将经过解密和验证的文件提供给合作伙伴管理员。


                显示出站邮件处理顺序的示意图。

AS2 处理支持许多 RFC 4130 协议,重点关注常见用例以及与现有支持 AS2 的服务器实现的集成。有关支持的配置的详细信息,请参阅AS2 支持的配置.

文件名和位置

本节讨论 AS2 传输的文件命名惯例。

对于入站文件传输,请注意以下事项:

  • 您可以在协议中指定基目录。基本目录是结合了前缀(如果有)的 Amazon S3 存储桶名称。例如,DOC-EXAMPLE-BUCKET/AS2-folder

  • 如果成功处理传入文件,则该文件(和相应的 JSON 文件)将保存到/processed文件夹。例如,DOC-EXAMPLE-BUCKET/AS2-folder/processed

    JSON 文件包含以下字段:

    • agreement-id

    • as2-from

    • as2-to

    • as2-message-id

    • transfer-id

    • client-ip

    • connector-id

    • failure-message

    • file-path

    • message-subject

    • mdn-message-id

    • mdn-subject

    • requester-file-name

    • requester-content-type

    • server-id

    • status-code

    • failure-code

    • transfer-size

  • 如果无法成功处理传入文件,则该文件(和相应的 JSON 文件)将保存到/failed文件夹。例如,DOC-EXAMPLE-BUCKET/AS2-folder/failed

  • 传输的文件存储在processed文件夹original_filename.messageId.original_extension. 也就是说,传输的消息 ID 会附加到文件名后面,位于文件的原始扩展名之前。

  • 已创建 JSON 文件并将其另存为original_filename.messageId.original_extension.json. 除了要添加的消息 ID 外,字符串.json会附加到传输文件的名称后。

  • 创建消息处置通知 (MDN) 文件并将其另存为original_filename.messageId.original_extension.mdn. 除了要添加的消息 ID 外,字符串.mdn会附加到传输文件的名称后。

  • 如果有名为的入站文件ExampleFileInS3Payload.dat,将创建以下文件:

    • FileExampleFileInS3Payload.c4d6b6c7-23ea-4b8c-9ada-0cb811dc8b35@44313c54b0a46a36.dat

    • JSONExampleFileInS3Payload.c4d6b6c7-23ea-4b8c-9ada-0cb811dc8b35@44313c54b0a46a36.dat.json

    • 伙计ExampleFileInS3Payload.c4d6b6c7-23ea-4b8c-9ada-0cb811dc8b35@44313c54b0a46a36.dat.mdn

对于出站传输,命名类似,不同之处在于没有传入的消息文件,而且传输的消息的传输 ID 会添加到文件名中。Transfer (转移)StartFileTransferAPI 操作(或者当另一个进程或脚本调用此操作时)。

  • 这些区域有:transfer-id是与文件传输关联的标识符。属于 a 的所有请求StartFileTransfercall share atransfer-id.

  • 基目录与您用于源文件的路径相同。也就是说,基目录是您在中指定的路径StartFileTransferAPI 操作或start-file-transfer Amazon CLI命令。例如:

    aws transfer start-file-transfer --send-file-paths DOC-EXAMPLE-BUCKET/AS2-folder/file-to-send.txt

    如果你运行这个命令,MDN 和 JSON 文件将保存在DOC-EXAMPLE-BUCKET/AS2-folder/processed(对于成功转账),或DOC-EXAMPLE-BUCKET/AS2-folder/failed(适用于不成功的转账)。

  • 已创建 JSON 文件并将其另存为original_filename.transferId.messageId.original_extension.json.

  • 创建一个 MDN 文件并将其另存为original_filename.transferId.messageId.original_extension.mdn.

  • 如果有名为的出站文件ExampleFileOutTestOutboundSyncMdn.dat,将创建以下文件:

    • JSONExampleFileOutTestOutboundSyncMdn.dedf4601-4e90-4043-b16b-579af35e0d83.fbe18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa.dat.json

    • 伙计ExampleFileOutTestOutboundSyncMdn.dedf4601-4e90-4043-b16b-579af35e0d83.fbe18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa.dat.mdn

您还可以查看 CloudWatch 日志以查看您的传输的详细信息,包括任何失败的传输。

示例 JSON 文件

本部分列出了入站和出站传输的示例 JSON 文件,包括成功传输和传输失败的示例文件。

成功传输的出站文件示例:

{ "requester-content-type": "application/octet-stream", "mesage-subject": "File xyzTest from MyCompany_OID to partner YourCompany", "requester-file-name": "TestOutboundSyncMdn-9lmCr79hV.dat", "as2-from": "MyCompany_OID", "connector-id": "c-c21c63ceaaf34d99b", "status-code": "COMPLETED", "disposition": "automatic-action/MDN-sent-automatically; processed", "transfer-size": 3198, "mdn-message-id": "OPENAS2-11072022063009+0000-df865189-1450-435b-9b8d-d8bc0cee97fd@PartnerA_OID_MyCompany_OID", "mdn-subject": "Message be18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa has been accepted", "as2-to": "PartnerA_OID", "transfer-id": "dedf4601-4e90-4043-b16b-579af35e0d83", "file-path": "/DOC-EXAMPLE-BUCKET/as2testcell0000/openAs2/TestOutboundSyncMdn-9lmCr79hV.dat", "as2-message-id": "fbe18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa", "timestamp": "2022-07-11T06:30:10.791274Z" }

传输失败的出站文件示例:

{ "failure-code": "HTTP_ERROR_RESPONSE_FROM_PARTNER", "status-code": "FAILED", "requester-content-type": "application/octet-stream", "subject": "Test run from Id da86e74d6e57464aae1a55b8596bad0a to partner 9f8474d7714e476e8a46ce8c93a48c6c", "transfer-size": 3198, "requester-file-name": "openAs2TestOutboundWrongAs2Ids-necco-3VYn5n8wE.dat", "as2-message-id": "9a9cc9ab-7893-4cb6-992a-5ed8b90775ff@718de4cec1374598", "failure-message": "http://Test123456789.us-east-1.elb.amazonaws.com:10080 returned status 500 for message with ID 9a9cc9ab-7893-4cb6-992a-5ed8b90775ff@718de4cec1374598", "transfer-id": "07bd3e07-a652-4cc6-9412-73ffdb97ab92", "connector-id": "c-056e15cc851f4b2e9", "file-path": "/testbucket-4c1tq6ohjt9y/as2IntegCell0002/openAs2/openAs2TestOutboundWrongAs2Ids-necco-3VYn5n8wE.dat", "timestamp": "2022-07-11T21:17:24.802378Z" }

成功传输的入站文件示例:

{ "requester-content-type": "application/EDI-X12", "subject": "File openAs2TestInboundAsyncMdn-necco-5Ab6bTfCO.dat sent from MyCompany to PartnerA", "client-ip": "10.0.109.105", "requester-file-name": "openAs2TestInboundAsyncMdn-necco-5Ab6bTfCO.dat", "as2-from": "MyCompany_OID", "status-code": "COMPLETED", "disposition": "automatic-action/MDN-sent-automatically; processed", "transfer-size": 1050, "mdn-subject": "Message Disposition Notification", "as2-message-id": "OPENAS2-11072022233606+0000-5dab0452-0ca1-4f9b-b622-fba84effff3c@MyCompany_OID_PartnerA_OID", "as2-to": "PartnerA_OID", "agreement-id": "a-f5c5cbea5f7741988", "file-path": "processed/openAs2TestInboundAsyncMdn-necco-5Ab6bTfCO.OPENAS2-11072022233606+0000-5dab0452-0ca1-4f9b-b622-fba84effff3c@MyCompany_OID_PartnerA_OID.dat", "server-id": "s-5f7422b04c2447ef9", "timestamp": "2022-07-11T23:36:36.105030Z" }

未成功传输的入站文件示例:

{ "failure-code": "INVALID_REQUEST", "status-code": "FAILED", "subject": "Sending a request from InboundHttpClientTests", "client-ip": "10.0.117.27", "as2-message-id": "testFailedLogs-TestRunConfig-Default-inbound-direct-integ-0c97ee55-af56-4988-b7b4-a3e0576f8f9c@necco", "as2-to": "0beff6af56c548f28b0e78841dce44f9", "failure-message": "Unsupported date format: 2022/123/456T", "agreement-id": "a-0ceec8ca0a3348d6a", "as2-from": "ab91a398aed0422d9dd1362710213880", "file-path": "failed/01187f15-523c-43ac-9fd6-51b5ad2b08f3.testFailedLogs-TestRunConfig-Default-inbound-direct-integ-0c97ee55-af56-4988-b7b4-a3e0576f8f9c@necco", "server-id": "s-0582af12e44540b9b", "timestamp": "2022-07-11T06:30:03.662939Z" }

创建启用 AS2 的服务器

此步骤介绍了如何使用 Transfation FTransfer Family y 控制台创建支持 AS2 的服务器。如果要Amazon CLI请改用第 2 步:创建使用 AS2 协议的 Transfer Family 服务器.

创建启用 AS2 的服务器

  1. 打开Amazon Transfer Family控制台位于https://console.aws.amazon.com/transfer/.

  2. 在左侧导航窗格中,选择服务器,然后选择创建服务器.

  3. 选择协议页面,SELECTAS2(适用性声明 2),然后选择下一页.

    
                            此图显示了选择了 AS2 协议的 “选择协议” 屏幕。
  4. 选择身份提供商页面,选择下一页.

    注意

    对于 AS2,您无法选择身份提供商,因为 AS2 协议不支持基本身份验证。相反,您可以通过虚拟私有云 (VPC irtual Private Cloud) 安全组控制访问权限。

  5. 选择终端节点页面上,请执行以下操作:

    
                        显示选择终端节点带有以下内容的页面VPC 托管已选中。
    1. 对于端点类型,选择VPC 托管托管服务器的终端节点。有关设置 Virtual PC 托管端点的信息,请参阅Virtual Private Cloud.

      注意

      AS2 协议不支持可公开访问的端点。要使您的 VPC 终端节点可通过互联网访问,请选择面向 Intert访问,然后提供您的弹性 IP 地址。

    2. 对于访问,请选择以下任一选项:

      • 内部— 选择此选项可在您的 VPC 和 VPC 连接环境中提供访问权限,例如本地数据中心Amazon Direct Connect或者 VPN。

      • 面向 Intert— 选择此选项可通过互联网以及您的 VPC 和 VPC 连接环境(例如本地数据中心)提供访问权限Amazon Direct Connect或者 VPN。

        如果选择面向 Intert,在提示时提供您的弹性 IP 地址。

    3. 对于VPC,要么选择现有 VPC,要么选择创建 VPC创建新的 VPC。

    4. 对于FIPS 已启用,保留启用 FIPS 的端点复选框已清除。

      注意

      AS2 协议不支持启用 FIPS 的端点。

    5. 选择 Next(下一步)。

  6. 选择一个域名页面,选择Amazon S3使用所选协议将文件作为对象存储和访问。

    选择 Next(下一步)。

  7. 配置其他详细信息页面上,选择您需要的设置。

    注意

    如果您在 AS2 的同时配置任何其他协议,则所有其他详细设置均适用。但是,对于 AS2 协议,唯一适用的设置是CloudWatch 记录标签部分。

    尽管设置了 CloudWatch 日志角色是可选的,我们强烈建议对其进行设置,以便您可以查看消息状态并解决配置问题。

  8. 审核和创建页面,检查您的选择,确保它们正确无误。

    • 如果要编辑任何设置,请选择编辑在您要更改的步骤旁边。

      注意

      如果您编辑步骤,我们建议您查看选择编辑的步骤之后的每个步骤。

    • 如果您没有更改,请选择创建服务器来创建你的服务器。您将转至如下所示的 Servers (服务器) 页面,其中列出了您的新服务器。

      
                                显示服务器带有新服务器 ID 的页面,其状态为Starting (正在启动).

      可能需要几分钟时间将您的新服务器的状态更改为线上. 到时候,您的服务器可以执行用户的文件操作。

导入 AS2 证书

Transfer Family AS2 流程使用证书密钥对传输的信息进行加密和签名。合作伙伴可以将同一个密钥用于两种用途,也可以为每种目的使用单独的密钥。如果您有由可信第三方托管的通用加密密钥,以便在发生灾难或安全漏洞时解密数据,我们建议您使用单独的签名密钥。通过使用单独的签名密钥(您不使用托管密钥),您不会损害数字签名的不可否认功能。

以下几点详细说明了在此过程中如何使用 AS2 证书。

  • 入站 AS2

    • 贸易伙伴发送签名证书的公钥,并将此密钥导入到合作伙伴配置文件中。

    • 本地方发送其加密和签名证书的公钥。然后,合作伙伴导入一个或多个私钥。本地方可以发送单独的证书密钥进行签名和加密,也可以选择将同一个密钥用于这两种用途。

  • 出站 AS2

    • 合作伙伴发送其加密证书的公钥,并将此密钥导入到合作伙伴配置文件中。

    • 本地方发送证书的公钥进行签名,并导入证书的私钥进行签名。

有关如何创建证书的详细信息,请参阅第 1 步:为 AS2 创建证书.

此步骤介绍了如何使用 Transfation FTransfer Family y 控制台导入证书。如果要Amazon CLI请改用第 3 步:将证书作为Transfer Family 证书资源导入.

指定启用 AS2 的证书

  1. 打开Amazon Transfer Family控制台位于https://console.aws.amazon.com/transfer/.

  2. 在左侧导航窗格中AS2 贸易伙伴,选择Certificates.

  3. 选择 Import certificate (导入证书)

  4. 证书描述部分,输入易于识别的证书名称。确保您可以通过描述来识别证书的用途。此外,选择证书的角色。

  5. 证书内容部分,提供贸易伙伴提供的公共证书,或本地证书的公钥和私钥。

  6. 证书使用率部分,选择此证书的用途。它可以用于加密、签名或两者兼而有之。

    注意

    如果选择加密和签名为便于使用,Transfer Family 会创建两个相同的证书(每个都有自己的 ID):一个的使用值为ENCRYPTION还有一个使用值为SIGNING.

  7. 填写证书内容部分包含相应的详细信息。

    • 如果选择自签名证书,则不提供证书链。

    • 粘贴证书的内容。

    • 如果证书不是自签名证书,请提供证书链。

    • 如果此证书是本地证书,请粘贴其私钥。

  8. 选择导入证书完成该过程并保存导入证书的详细信息。

AS2 证书轮换

通常,证书的有效期为六个月至一年。您可能已经设置了想要保留更长时间的配置文件。为方便起见,Transfer Family 提供证书轮换。您可以为一个配置文件指定多个证书,从而可以连续使用该配置文件多年。Transfer Family 使用证书进行签名(可选)和加密(必须)。如果你愿意,你可以为这两种用途指定一个证书。

证书轮换是用新证书替换即将到期的旧证书的过程。过渡是渐进的,目的是避免在协议中的合作伙伴尚未为出站传输配置新证书,或者在可能使用新证书的时期内发送使用旧证书签名或加密的有效负载的情况下中断传输。旧证书和新证书均有效的中间期被称为宽限期.

X.509 证书有Not BeforeNot After日期。但是,这些参数可能无法为管理员提供足够的控制。TTransfer Family er FActive DateInactive Date用于控制哪个证书用于出站有效负载以及哪个证书可用于入站有效负载的设置。

出站证书选择使用传输日期之前的最大值作为Inactive Date. 入站流程接受范围内的证书Not BeforeNot After并且在以下范围内Active DateInactive Date.

下表描述了为单个配置文件配置两个证书的一种可能方法。

轮流获得两份证书
名称 NOT BEFORE(由证书颁发机构控制) ACTIVE DATE(由Transfer Family 设定) INACTIVE DATE(由Transfer Family 设定) NOT AFTER(由证书颁发机构设置)
证书 1(较旧的证书) 2019-01 2020-01 2020-12-31 2021 年 1 月 1 日
证书 2(较新的证书) 2020-11-01 2020-06-01 2021 年 1 月 1 日 2021 年 1 月 1 日

请注意以下几点:

  • 当您指定Active DateInactive Date对于证书,范围必须介于以下范围内Not BeforeNot After.

  • 我们建议您为每个配置文件配置多个证书,确保所有证书的有效日期范围涵盖您要使用该配置文件的时间。

  • 我们建议您在旧证书失效和新证书生效之间指定一段宽限时间。在前面的示例中,第一个证书直到 2020-12-31 才处于非活动状态,而第二个证书在 2020-06-01 开始激活,提供 6 个月的宽限期。在2020-06-01至2020-12-31期间,这两份证书均处于有效状态。

创建 AS2 配置文件

使用此过程创建本地和合作伙伴档案。此过程说明如何使用 Transfer Family 控制台创建 AS2 配置文件。如果要Amazon CLI请改用第 4 步:为您和您的贸易伙伴创建个人资料.

要创建 AS2 配置文件

  1. 打开Amazon Transfer Family控制台位于https://console.aws.amazon.com/transfer/.

  2. 在左侧导航窗格中AS2 贸易伙伴,选择配置文件,然后选择创建配置文件.

  3. 配置文件配置部分,输入配置文件的 AS2 ID。此值用于特定于 AS2 协议的 HTTP 标头as2-fromas2-to确定交易伙伴关系,这决定了要使用的证书,依此类推。

  4. 配置文件类型部分,选择本地配置文件要么合作伙伴档案.

  5. Certificates部分中,从下拉菜单中选择一个或多个证书。

    注意

    如果要导入下拉菜单中未列出的证书,请选择导入新证书. 这将在以下位置打开一个新的浏览器窗口导入证书屏幕。有关导入证书的步骤,请参阅导入 AS2 证书.

  6. (可选)在标签部分中,指定一个或多个键值对以帮助标识此配置文件。

  7. 选择创建配置文件完成该过程并保存新的配置文件。

创建 AS2 连接器

连接器的目的是在贸易伙伴之间建立关系往外地的传输-将 AS2 文件从 Transfer Family 服务器发送到合作伙伴拥有的外部目的地。对于连接器,您可以指定本地方、远程伙伴及其证书(通过创建本地和合作伙伴配置文件)。连接器到位后,您可以在贸易伙伴之间传输信息。

注意

贸易伙伴收到的消息大小将与 Amazon S3 中的对象大小不匹配。之所以出现这种差异,是因为 AS2 消息在发送之前将文件封装在信封中。因此,即使文件是通过压缩发送的,文件大小也可能会增加。因此,请确保贸易伙伴的最大文件大小大于您发送的文件的大小。

此过程说明如何使用 Transfer Family 控制台创建 AS2 连接器。如果要Amazon CLI请改用第 6 步:在你和你的伴侣之间创建一个连接器.

创建 AS2 连接器

  1. 打开Amazon Transfer Family控制台位于https://console.aws.amazon.com/transfer/.

  2. 在左侧导航窗格中,选择连接器,然后选择创建连接器.

  3. 在顶部部分中,指定以下信息:

    • URL— 输入出站连接的 URL。

    • 访问角色— 选择的 Amazon 资源名称 (ARN)Amazon Identity and Access Management要使用的 (IAM) 角色。确保此角色提供对所用文件位置的父目录的读写权限StartFileTransfer请求。此外,请确保该角色提供对您打算发送的文件的父目录的读写权限StartFileTransfer.

    • 记录角色(可选)— 选择连接器的 IAM 角色以将事件推送到您的 CloudWatch 日志。

  4. AS2 配置部分,选择本地和合作伙伴配置文件、加密和签名算法,以及是否压缩传输的信息。

    注意

    这些区域有:Subject被用作subject通过连接器发送的 AS2 消息中的 HTTP 标头属性。

  5. MDN 配置部分中,指定以下信息:

    • 请求 MDN—您可以选择要求您的交易伙伴在他们通过AS2成功收到您的消息后向您发送MDN。

    • 签名 MDN— 您可以选择要求对 mDNS 进行签名。此选项仅在您选择时可用请求 MDN.

  6. 确认所有设置后,选择创建连接器以创建连接器。

这些区域有:连接器此时将显示页面,并将您的新连接器的 ID 添加到列表中。

创建 AS2 协议

协议与 Transfer Family 服务器相关联。它们为使用 AS2 协议使用 Transfer Family 交换消息或文件的贸易伙伴指定了详细信息,因为入站传输——将 AS2 文件从外部合作伙伴拥有的来源发送到 Transfer Family 服务器。

此过程说明如何使用 Transfer Family 控制台创建 AS2 协议。如果要Amazon CLI请改用第 5 步:在你和你的伴侣之间签订协议.

为 Transfer Family 服务器创建协议

  1. 打开Amazon Transfer Family控制台位于https://console.aws.amazon.com/transfer/.

  2. 在左侧导航窗格中,选择服务器,然后选择使用 AS2 协议的服务器。

  3. 在服务器详细信息页面上,向下滚动到协议部分。

    
                        显示协议包含协议 ID 和状态的部分活跃.
  4. 选择添加协议.

  5. 填写协议参数,如下所示:

    1. 协议配置部分,输入一个描述性名称。确保您可以通过名称识别协议的目的。另外,设置状态对于协议:要么处于活动状态(默认选择)或INACT.

    2. 通信配置部分,选择本地资料和合作伙伴档案。

    3. 收件箱文件夹配置部分,选择用于存储传入文件的 Amazon S3 存储桶和可以访问存储桶的 IAM 角色。或者,您可以输入用于在存储桶中存储文件的前缀(文件夹)。

      例如,如果输入DOC-EXAMPLE-BUCKET为存储桶还有incoming对于您的前缀,您的传入文件将保存到/DOC-EXAMPLE-BUCKET/incoming文件夹。

    4. (可选)将标签添加到标签部分。

    5. 输入协议的所有信息后,选择创建协议.

新协议出现在协议服务器详细信息页面的部分。