本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建工作流
您可以使用创建托管工作流Amazon Web Services Management Console,如本主题中所述。为了使工作流创建过程尽可能简单,控制台中的大多数部分都提供了上下文帮助面板。
工作流程有两种步骤:
-
标称步骤 — 标称步骤是您要应用于传入文件的文件处理步骤。如果您选择多个标称步骤,会按线性顺序处理每个步骤。
-
异常处理步骤 — 异常处理程序是文件处理步骤,在任何名义步骤失败或导致验证错误时Amazon Transfer Family执行。
创建工作流
-
通过 https://console.aws.amazon.com/transfer/
打开Amazon Transfer Family主机。 -
在左侧导航窗格中,选择工作流。
-
在 “工作流” 页面上,选择 “创建工作流程”。
-
在 Cre ation 工作流页面,输入描述。此描述显示在 “工作流” 页面上。
-
在 “标称步长” 部分中,选择 “添加步长”。添加一个或多个步骤。
-
从可用选项中选择步骤类型。有关各种步骤类型的更多信息,请参阅使用预定义的步骤。
-
选择 “下一步”,然后为该步骤配置参数。
-
选择 “下一步”,然后查看该步骤的详细信息。
-
选择 “创建步骤” 以添加该步骤并继续。
-
根据需要继续添加步骤。工作流中的最大步骤数是 8。
-
添加所有必要的标称步骤后,向下滚动到 “异常处理程序 — 可选” 部分,然后选择 “添加步骤”。
注意 为了让您实时了解失败情况,我们建议您设置异常处理程序和步骤,以便在工作流程失败时执行。
-
-
要配置异常处理程序,请以与前面所述相同的方式添加步骤。如果文件导致任何步骤引发异常,则会逐一调用您的异常处理程序。
-
(可选)向下滚动到 “标签” 部分,为您的工作流程添加标签。
-
查看配置,然后选择 “创建工作流程”。
重要 创建工作流程后,您将无法对其进行编辑,因此请务必仔细查看配置。
在工作流程中使用 PGP 解密
Transfer Family 内置支持 Pretty Good Privacy (PGP) 解密。您可以对通过 SFTP、FTPS 或 FTP 上传到亚马逊Simple Storage Service (Amazon S3) 或Amazon Elastic File System (Amazon EFS) 的文件使用 PGP 解密。
要使用 PGP 解密,必须创建和存储用于解密文件的 PGP 密钥对。然后,您的用户可以使用这些 PGP 密钥对文件进行加密,然后再将文件上传到您的 Transfer Family 服务器。收到加密文件后,您可以在工作流程中解密这些文件。
在工作流程中使用 PGP 解密
-
安装 PGP 密钥生成应用程序。有关更多信息,请参阅生成 PGP 密钥:
-
生成 PGP key pair,并提供密码以保护您的私有密钥。
重要 创建用于存储 PGP 密钥的密钥时,必须为 PGP key pair 提供密码短语和私钥。Transfer Family 使用此密码和私钥来解密文件。有关管理 PGP 密钥的详细信息,请参阅管理 PGP 密钥。
-
导出您的私钥并将其保存到文件中。
-
将您的 PGP 密钥存储在Amazon Secrets Manager。有关将 PGP 密钥存储在 Secrets Manager 中的详细信息,请参阅管理 PGP 密钥。
-
使用您的 PGP key pair 加密文件。如果您使用命令行,请运行以下命令。要使用此命令,请
替换为用于创建 PGP key pair 的电子邮件地址。将username@example.com
换为要加密的文件的名称。testfile.txt
gpg -e -r
username@example.com
--openpgptestfile.txt
重要 您必须在此命令中使用该
--openpgp
标志。默认情况下,gpg
生成不符合 OpenPGP RFC4880标准的加密文件。如果您不使用此标志,Transfer Family 将无法解密您的文件。 -
将加密文件上传到您的 Transfer Family 服务器。
-
在工作流程中配置解密步骤。有关更多信息,请参阅解密文件:
配置和执行工作流程
将 Transfer Family 配置为对上传的文件运行工作流程
-
通过 https://console.aws.amazon.com/transfer/
打开Amazon Transfer Family主机。 -
在左侧导航窗格中,选择 Servers (服务器)。
-
要将工作流添加到现有服务器,请选择要用于工作流的服务器。
-
或者,创建一个新服务器并将工作流程添加到其中。有关更多信息,请参阅创建服务器:
-
-
在服务器的详细信息页面上,向下滚动到 “其他详细信息” 部分,然后选择 “编辑”。
注意 默认情况下,服务器没有任何关联的工作流程。您可以使用 “其他详细信息” 部分将工作流与所选服务器相关联。
-
在 “编辑其他详细信息” 页面的 “托管工作流” 部分,选择要在所有上传时运行的工作流程。
注意 如果您没有工作流,请选择创建新的工作流来创建工作流。
-
选择要使用的工作流程 ID。
-
选择执行角色。这是 Transfer Family 在执行工作流程步骤时所扮演的角色。有关更多信息,请参阅工作流的 IAM 策略。选择 Save(保存)。
-
执行工作流程
要执行工作流程,您可以将文件上传到配置了关联工作流的 Transfer Family 服务器。
如果从服务器上移除工作流并将其替换为新的工作流,则必须等待大约 10 分钟才能执行新工作流。Transfer Family 服务器缓存工作流详细信息,服务器刷新其缓存需要 10 分钟。
# Execute a workflow > sftp bob@s-1234567890abcdef0.server.transfer.us-east-1.amazonaws.com Connected to s-1234567890abcdef0.server.transfer.us-east-1.amazonaws.com. sftp> put doc1.pdf Uploading doc1.pdf to /DOC-EXAMPLE-BUCKET/home/users/bob/doc1.pdf doc1.pdf 100% 5013KB 601.0KB/s 00:08 sftp> exit >
上传文件后,将对您的文件执行定义的操作。例如,如果您的工作流程包含复制步骤,则该文件将被复制到您在该步骤中定义的位置。您可以使用 Amaz CloudWatch on Logs 来跟踪已执行的步骤及其执行状态。
查看工作流详细信息
您可以查看有关先前创建的工作流或工作流程执行的详细信息。要查看这些详细信息,可以使用控制台或Amazon Command Line Interface (Amazon CLI)。
如果您的工作流程是作为Amazon CloudFormation堆栈的一部分创建的,则可以使用Amazon CloudFormation控制台 (https://console.aws.amazon.com/cloudformation
