

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

# Amazon Transfer Family 适用于 AS2
<a name="as2-for-transfer-family"></a>

适用性声明 2 (AS2) 是一种 RFC-defined 文件传输规范，包括强大的消息保护和验证机制。保护传输中的 AS2 有效载荷使用带有加密和数字签名的加密消息语法 (CMS) 来提供数据保护和对等身份验证。已签名的消息处置通知（MDN）响应有效负载提供消息已接收并成功解密的验证（不可否认性）。

AS2 协议对于具有合规性要求的工作流程至关重要，这些工作流程依赖于在协议中内置数据保护和安全功能。 Amazon Transfer Family AS2 端点已通过 [Drummond 认证](https://www.amazonaws.cn/about-aws/whats-new/2023/06/aws-transfer-family-drummond-group-as2-certification/)，使零售、生命科学、制造业、金融服务和公用事业等行业的客户能够安全地与其业务合作伙伴进行交易。

当你将 AS2 与 Transfer Family 配合使用时，可以在以下版本中本地访问已处理的数据： Amazon 
+ 处理、分析和机器学习
+ 与企业资源规划 (ERP) 系统集成
+ 与客户关系管理 (CRM) 系统集成

要与拥有 AS2-enabled 服务器的合作伙伴交换文件，您必须：
+ 生成用于加密的公私密钥 pair
+ 生成用于签名的公私密钥 pair
+ 与您的伴侣交换公钥

**重要**  
目前不支持 HTTPS AS2 服务器端点。您应对终止 TLS 负责。

Transfer Family 提供了一个你可以参加的研讨会，你可以在其中配置启用 AS2 的 Transfer Family 端点和 Transfer Family AS2 连接器。您可以[在此处](https://catalog.workshops.aws/transfer-family-as2/en-US)查看本次研讨会的详细信息。

有关在 Transfer Family 中配置 AS2 的分步说明，请参阅以下内容：

1. [导入 AS2 证书](managing-as2-partners.md#configure-as2-certificate)

1. [创建 AS2 配置文件](configure-as2-profile.md)

1. [创建 AS2 服务器](create-as2-transfer-server.md)

1. [创建 AS2 协议](create-as2-transfer-server.md#as2-agreements)

1. [配置 AS2 连接器](configure-as2-connector.md)

有关完整示例，请参阅[设置 AS2 配置](as2-example-tutorial.md)。

**注意**  
要显示对 AS2 Terraform 模板的支持，请在 Transfer Family T [er](https://github.com/aws-ia/terraform-aws-transfer-family/issues/62#issue-3364703944) raform 模板功能请求中添加竖起大拇指的反应 (👍)。您也可以添加评论来描述您的用例。

## AS2 使用案例
<a name="as2-use-cases"></a>

如果您是想要与拥有 AS2-enabled 服务器的合作伙伴交换文件的 Amazon Transfer Family 客户，则设置中最复杂的部分是生成一个用于加密的公私密钥对，另一个用于与合作伙伴签署和交换公钥。

![该图显示了使用公有-私有密钥对进行加密和签名的情况。](http://docs.amazonaws.cn/transfer/latest/userguide/images/as2-architecture-high-level.png)


在 AS2 中使用 Amazon Transfer Family 时，请考虑以下变体。

**注意**  
*贸易伙伴*是与该合作伙伴资料关联的合作伙伴。  
下表中所有提及 *MDN* 的内容都假设*已签名*的 MDN。


**AS2 使用案例**  

|  | 
| --- |
| Inbound-only 用例[See the AWS documentation website for more details](http://docs.amazonaws.cn/transfer/latest/userguide/as2-for-transfer-family.html) | 
| Outbound-only 用例[See the AWS documentation website for more details](http://docs.amazonaws.cn/transfer/latest/userguide/as2-for-transfer-family.html) | 
| 入站和出站使用案例[See the AWS documentation website for more details](http://docs.amazonaws.cn/transfer/latest/userguide/as2-for-transfer-family.html) | 

## AS2 模板 CloudFormation
<a name="as2-templates-section"></a>

本主题提供有关可用于快速部署 AS2 服务器和配置的 Amazon CloudFormation Amazon Transfer Family模板的信息。这些模板可以自动执行设置过程，并帮助您实施 AS2 文件传输的最佳实践。
+ 有关基本 AS2 模板的描述，请参见 [使用模板创建演示 Transfer Family AS2 堆栈](create-as2-transfer-server.md#as2-cfn-demo-template)
+ 中描述了用于自定义 HTTP 标头的 AS2 模板。[自定义 AS2 消息的 HTTP 标头](as2-custom-http-headers.md)

### 自定义 AS2 模板
<a name="as2-template-customization"></a>

您可以自定义提供的模板以满足您的特定要求：

1. 从 S3 网址下载模板。

1. 修改 YAML 代码以调整配置，例如：
   + 安全设置和证书配置
   + 网络架构和 VPC 设置
   + 存储选项和文件处理
   + 监控和通知首选项

1. 将修改后的模板上传到自己的 S3 存储桶。

1. 使用 Amazon CloudFormation 控制台部署自定义模板或 Amazon CLI。

**重要**  
自定义模板时，请确保保持资源之间的依赖关系并遵循安全最佳实践。

### 测试您的 AS2 部署
<a name="as2-template-testing"></a>

使用模板部署 AS2 服务器后，您可以测试配置：

1. 查看 CloudFormation 堆栈输出以获取示例命令和端点信息。

1. 使用 Amazon CLI 发送测试文件：

   ```
   aws s3api put-object --bucket {{your-bucket-name}} --key test.txt --body test.txt
   aws transfer start-file-transfer --connector-id {{your-connector-id}} --send-file-paths /{{your-bucket-name}}/test.txt
   ```

1. 验证目标 S3 存储桶中的文件传输。

1. 检查 CloudWatch 日志是否成功处理和 MDN 响应。

要进行更全面的测试，可以考虑使用第三方 AS2 客户端将文件发送到您的 Transfer Family AS2 服务器。

### AS2 模板部署的最佳实践
<a name="as2-template-best-practices"></a>

使用 AS2 CloudFormation 模板时，请遵循以下最佳实践：

安全性  
使用强证书并定期轮换。  
实施最低权限的 IAM 策略。  
使用安全组限制网络访问。

可靠性  
跨多个可用区部署。  
对失败的传输实施监控和警报。  
为失败的传输设置自动重试。

性能  
为您的传输量选择合适的实例类型。  
实施 S3 生命周期策略以实现高效的文件管理。  
监控和优化网络配置。

成本优化  
对可变的工作负载使用自动缩放。  
为较旧的文件实现 S3 存储类别。  
根据实际使用情况监控和调整资源。