如何使用 AWS Transfer 使用 Node.js 将文件从 AWS 移动到第三方



我看过很多使用 AWS Transfer 将文件移动到 S3 中的示例。 我有相反的需求。

单独的项目中,有人在 S3 中删除了一个文件。我有 pgp 使用第三方公钥加密该文件的代码。 然后,代码将加密文件移动到另一个 S3 位置。 这部分已经完成并正在工作。

问题:我现在需要将此 S3 加密文件从 AWS SFTP 传送给第三方。

似乎AWS Transfer是要走的路。我看到的示例都是针对传入文件的示例。

我更愿意在 Lambda 中执行此操作。我在 S3 中设置了一个触发器,用于在每次丢弃加密文件时运行 Lambda 函数。 我已经设置并工作了,但没有别的。

还有其他人这样做过吗?

看来您的要求是:

  • 将文件放入特定 Amazon S3 存储桶/路径时
  • 触发 AWS Lambda 函数
  • Lambda 函数应该:
    • 加密文件
    • 通过 SFTP 将其发送到远程位置

如果您除了最后一步之外一切正常,那么您只需要编写将通过 SFTP 发送文件的代码。您可以将此代码放在 Lambda 函数中。

例如,在 Node 中有一个名为 ssh2-sftp-client 的库

看:

  • ssh2-sftp-client - npm
  • 在 NodeJS 中连接到 SFTP 的最佳方式是什么? - Quora(夸拉(

由于连接是出站到远程位置的,因此此类连接不会涉及任何 AWS 服务(除了代码在 AWS Lambda 中运行的事实(。

最新更新