写点什么

AWS Transfer for SFTP,适用于 Amazon S3 的完全托管式 SFTP 服务

  • 2019-10-15
  • 本文字数:2580 字

    阅读完需:约 8 分钟

AWS Transfer for SFTP,适用于 Amazon S3 的完全托管式 SFTP 服务

许多组织将 SFTP(安全文件传输协议)纳入长期建立的数据处理和合作伙伴集成工作流的一部分。虽然很容易因这些系统“老旧”而忽略它们,但事实上,它们非常有用,并将在相当长的一段时间内继续发挥作用。我们希望帮助客户以顺畅、不中断的方式将这些工作流迁移到云。


AWS Transfer for SFTP


今天,我们推出了 AWS Transfer for SFTP,一款完全托管、高度可用的 SFTP 服务。您只需创建服务器,设置用户账户,并将服务器与一个或多个 Amazon Simple Storage Service (S3) 存储桶相关联即可。您可以对用户身份、权限和密钥进行精细控制。您可以在 Transfer for SFTP 中创建用户,也可以使用现有的身份提供商。您还可以使用 IAM 策略来控制授予每个用户的访问权限级别。您还可以使用现有的 DNS 名称和 SSH 公钥,轻松迁移到 Transfer for SFTP。您的客户和合作伙伴将继续照常连接并进行传输,不会更改现有工作流。


您拥有底层 S3 存储桶的完整访问权限,并且可以使用许多不同的 S3 功能,包括生命周期策略、多个存储类、服务器端加密的多个选项和版本控制等等。您可以编写 AWS Lambda 函数来构建一个“智能”FTP 站点,传入文件上传成功后,就能对其进行处理,使用 Amazon Athena 就地查询文件,并轻松连接到现有数据注入过程。在出站端,您可以使用其他 AWS 服务生成报告、文档、清单、自定义软件版本等,然后将它们存储在 S3 中,以便控制对您的客户和合作伙伴进行的分发。


创建服务器


首先,我打开 AWS Transfer for SFTP 控制台并单击 Create server(创建服务器):



我可以让 Transfer for SFTP 管理用户名和密码,也可以通过 API Gateway 访问现有的 LDAP 或 Active Directory 身份提供程序。我可以使用 Amazon Route 53 DNS 别名或现有的主机名,还可以标记我的服务器。我从默认值开始,然后单击 Create server(创建服务器),实际创建我的 SFTP 服务器:



服务器启动并在几分钟内运行:



现在我可以添加一两个用户! 我选择服务器并单击添加用户,然后输入用户名,为其主目录选择 S3 存储桶(带有可选前缀),并选择一个 IAM 角色,为用户提供所需的存储桶访问权限。然后我粘贴 SSH 公钥(使用 ssh-keygen 创建),然后单击添加:



现在我已一切准备就绪。我从控制台检索服务器终端节点并发出我的第一个 sftp 命令:



这些文件立即显示在 S3 存储桶的 jeff/ 部分中:



我可以将一个 Lambda 函数附加到存储桶并执行我想要的任何类型的上传后处理操作。例如,我可以通过 Amazon Rekognition 运行所有上传的图像,并根据它包含的对象类型将它们路由到几个不同目的地之一,我可以通过 Amazon Comprehend 运行音频文件来执行语音转文本操作。


通过 IAM 实现全面控制


为了在演练中直奔正题,我的 IAM 角色使用了下面这个非常简单的策略:


{    "Version": "2012-10-17",    "Statement": [        {            "Effect": "Allow",            "Action": [                "s3:ListAllMyBuckets",                "s3:GetBucketLocation"            ],            "Resource": "*"        },        {            "Effect": "Allow",            "Action": "s3:ListBucket",            "Resource": "arn:aws:s3:::data-transfer-inbound"        },        {            "Effect": "Allow",            "Action": "s3:*",            "Resource": "arn:aws:s3:::data-transfer-inbound/jeff/*"        }    ]}
复制代码


如果我计划在同一台服务器上托管大量用户,我可以使用如下所示的范围缩小策略:


{    "Version": "2012-10-17",    "Statement": [        {            "Sid": "ListHomeDir",            "Effect": "Allow",            "Action": "s3:ListBucket",            "Resource": "arn:aws:s3:::${transfer:HomeBucket}"        },        {            "Sid": "AWSTransferRequirements",            "Effect": "Allow",            "Action": [                "s3:ListAllMyBuckets",                "s3:GetBucketLocation"            ],            "Resource": "*"        },        {            "Sid": "HomeDirObjectAccess",            "Effect": "Allow",            "Action": [                "s3:PutObject",                "s3:GetObject",                "s3:DeleteObjectVersion",                "s3:DeleteObject",                "s3:GetObjectVersion"            ],            "Resource": "arn:aws:s3:::${transfer:HomeDirectory}*"        }    ]}
复制代码


在评估范围缩小策略时,{transfer:HomeDirectory} 策略变量将设置为每个用户对应的值;这允许我使用针对每个用户适当定制的相同策略。


注意事项


关于 AWS Transfer for SFTP,请记住以下几点:


程序化访问 – 还提供了一整套 API 和 CLI 命令。例如,我可以使用一个简单的命令创建服务器:


$ aws transfer create-server --identity-provider-type SERVICE_MANAGED -------------------------------------|           CreateServer            |+-----------+-----------------------+|  ServerId |  s-b445dcff7f164c73a  |+-----------+-----------------------+
复制代码


还有许多其他命令,包括 list-servers、start-server、stop-server、create-user 和 list-users。


CloudWatch – 每个服务器都可以选择将详细的访问日志发送到 Amazon CloudWatch。一个单独的日志流用于每个 SFTP 会话,还有一个日志流用于身份验证错误:



备用身份提供程序 – 我向您展示了上面的内置用户管理。您还可以访问使用现有 LDAP 或 Active Directory 的备用身份提供程序。


定价 – 您需要按小时为每台运行的服务器支付费用,并按 GB 为上传和下载的数据支付费用。


现已推出


AWS Transfer for SFTP 现已面向以下区域推出:美国东部(弗吉尼亚北部)、美国东部(俄亥俄)、美国西部(俄勒冈)、美国西部(加利福尼亚北部)、加拿大(中部)、欧洲(爱尔兰)、欧洲(巴黎)、欧洲(法兰克福)、欧洲(伦敦)、亚太地区(东京)、亚太地区(新加坡)、亚太地区(悉尼)以及亚太地区(首尔)。


– Jeff;


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/新增功能-aws-transfer-for-sftp-适用于-amazon-s3-的完全托管式-sftp-服务/


2019-10-15 14:341024
用户头像

发布了 1855 篇内容, 共 124.1 次阅读, 收获喜欢 81 次。

关注

评论

发布
暂无评论
发现更多内容

PhotoBulk:Mac上批量调整图片大小、分辨率、添加水印和转换格式的工具

Rose

苹果软件资源站 PhotoBulk for Mac 图片水印添加 批量调整图片 PhotoBulk Mac破解版

iOS MachineLearning 系列(15)—— 可进行个性化更新的CoreML模型

珲少

从立项到发布仅三个月,开源技术问答社区 Answer 是如何诞生的?

万事ONES

流控验证太麻烦?不敢上生产?MSE 有办法!

阿里巴巴云原生

阿里云 微服务 云原生 Spring Cloud Apache Dubbo

如何使用apache的ab压力测试小工具传参数

北桥苏

AB apche A/B 测试

数据剖析更灵活、更快捷,火山引擎DataLeap动态探查全面升级

字节跳动数据平台

“三问五步”落地医疗行业数据安全建设体系|盾见

极盾科技

数据安全

泰裤拉,安卓反编译居然可以这么简单——Jadx

吴脑的键客

共筑数字化未来 金山办公携手华为云完成文档中心和GaussDB适配

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

在行 | “数智”为离散制造发展注入动能

用友BIP

Android 14 Beta 正式亮相, OPPO 连续五年稳居适配第一阵营

科技热闻

谷歌全线反击!PaLM 2部分性能已经超越GPT-4

引迈信息

低代码 Google ChatGPT JNPF PaLM 2

Prompt learning 教学[基础篇]:prompt基本原则以及使用场景技巧助力你更好使用chatgpt,得到你想要的答案

汀丶人工智能

人工智能 自然语言处理 深度学习 ChatGPT prompt learning

JMeter笔记5 |Badboy使用和录制

Jmeter 性能测试 自动化测试 接口测试 脚本录制

解决centos的mysql服务3306端口无法远程连接10038问题

北桥苏

MySQL 安装宝塔

八股MQ007——浅谈Broker的网络架构

Codyida

后端、

中馥科技集团成为五粮液社交零售战略合作伙伴,强强联手布局白酒赛道

电子信息发烧客

提升打字速度,Master of Typing 3中文很简单~

真大的脸盆

Mac Mac 软件 打字练习 打字软件

来了!昇腾MindStudio全流程工具链分论坛精彩回顾,助力高效开发和迁移效率提升

Geek_2d6073

如何向大模型ChatGPT提出问题以获得优质回答:基于AIGC和深度学习的实践指南

GPU算力

瓴羊Quick BI数据可视化打造看板,助力极氪汽车决策

夏日星河

MAMP Pro(web开发环境)MAMP Pro使用技巧概述

Rose

MAMP Pro破解 MAMP Pro Mac下载 web环境开发 MAMP PRO激活码 MAMP Pro安装教程

让开发者成为创新主体 | 阿里云云原生4月动态

阿里巴巴云原生

阿里云 云原生 月报

开源字节数字化乡村系统

源字节1号

开源 软件开发 小程序开发

网心科技荣获第二十届“深圳知名品牌”荣誉称号

网心科技

购买小间距led显示屏需要注意什么?

Dylan

图像 像素灰度 LED显示屏

聆心智能联合洪恩打造“AI问答”|国内首批儿童启蒙成长领域类ChatGPT式应用

硬科技星球

IOS技术分享| 快对讲2.0会议场景实现

anyRTC开发者

ios 音视频 视频会议 移动开发 快对讲

MySQL表分区的选择与实践小结

北桥苏

MySQL 表分区

AWS Transfer for SFTP,适用于 Amazon S3 的完全托管式 SFTP 服务_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章