基于Amazon S3设置AWS Transfer Family Web 应用程序 - 实践
基于Amazon S3设置AWS Transfer Family Web 应用程序
Amazon Transfer Family Web 应用程序献出了简单、无代码、完全托管的浏览器体验,支持与 Amazon Simple Storage Service(Amazon S3)之间的安全文件传输。通过采用这种基于浏览器的解决方案,组织无需在不同的终端用户设备和操作系统上安装、支持各种文件传输客户端并排查问题,从而减少了运营开销。
这种手段对非技术用户尤其有益,因为客户端应用程序的操作可能较为困难。这些 Web 应用程序原生集成了 AWS IAM Identity Center 和 Amazon S3 访问权限管控,确保只有经过身份验证的用户才能查看其获得授权访问的信息。
本方案基于亚马逊云科技:
先需要创建注册并登录亚马逊云科技账号:亚马逊云科技官网
亚马逊云科技近期推出了全新免费套餐(Free Tier 2.0),可以帮助开发者/企业用户更低成本、更轻松地上手云服务,新账户注册可领$100 美元抵扣金,完成 5 个入门任务,每完成一项额外奖励 $20,最高再拿 $100,总抵扣金达200 美元;
与旧版本对比,其优势如下,不过需要注意的是仅在海外区域可用哦(北京与宁夏为中国区域,其他为海外区域)
Free Tier 2.0(现行) Legacy Free Tier(旧版) 账户与支付 承受银联信用卡注册账户与人民币支付,无需外币信用卡。(2月份开始支持银联信用卡) 免费形态 账户分为两种计划:免费计划(确保 0 元,最长 6 个月或抵扣金用完)与付费计划(所有服务全量访问)。两种计划内均包括服务抵扣金,短期免费试用服务和永久免费服务。 三类优惠:Trials(短期试用)/ 12 个月免费 / 永久免费;到期或超额后按需计费。 金额机制 新用户最高 $200 AWS 抵扣金:注册 $100,搞定 EC2/RDS/Lambda/Bedrock/Budgets 5个任务再得 $100。 以按服务配额为主(按月清零、不可跨服务挪用),没用到的配额会浪费。 误扣风险 免费计划不扣费(除非自愿升级),剩余抵扣金升级后在自注册起 12 个月内仍可用于合规服务。 容易因超出某服务配额而进入计费;新手对“超限”不敏感。 特点 专而深:抵扣金可集中投向你的刚需服务(示例:EC2 指定实例族、RDS、Lambda、Bedrock 等)。 广而浅:配额分布在很多服务,用不到的等于浪费,刚需服务的免费量相对有限。
1. 创建web应用程序
登录亚马逊与科技管理控制台,搜索Amazon IAM Identity Center,并确认位于正确的 AWS 区域。
2.选择 设置并记下 实例 ARN。
3.导航到 Amazon Transfer Family 并选择Web 应用程序。
4.选择创建 Web 应用程序,以配置 Web 应用程序。
否已连接 IAM Identity Center。就是5.在身份验证访问下验证
- 对于权限类型,选择创建并使用新的服务角色
6.对于标签,选择添加标签。
- 对于键,输入名称。
- 对于值,输入 Transfer Family Web 应用程序演示。
7.选择下一步。
9.查看所选输入,并选择创建 Web 应用程序。
10.创建 Web 应用程序后,选择添加用户。
2. 分配用户
1.选择分配用户和群组,并选择分配现有用户和群组。
2.选择下一步。
3.在弹出窗口中,搜索您的用户,
4.选择用户,并选择分配。
5.在 Web应用程序详细信息窗格中,复制**实例 **ARN,因为在启用跨源资源共享时会用到它。
6.在用户选项卡上,复制用户ID
2. 设置跨源资源共享 (CORS)
2.1 创建存储桶
1.打开 Amazon S3 控制台,然后选择创建存储桶。
- 如 transfer-family-web-app-demo-。
3.将其余选项保留为默认值。导航到页面底部,然后选择创建存储桶。
1.创建存储桶后,在通用存储桶选项卡上,搜索您创建的存储桶,选择名称**。选择**权限选项卡。
2.在跨源资源共享 (CORS) 中,选择编辑并粘贴以下代码。
3.将 AccessEndpoint替换为复制的实际InstanceARN。
- 注:请勿输入尾部斜杠,因为当用户尝试登录 Web 应用程序时,尾部斜杠会导致错误。
- 正确的例子:https://webapp-b4d851af6e314fc39.transfer-webapp.us-west-2.on.aws
- 错误的例子:*https://webapp-b4d851af6e314fc39.transfer-webapp.us-west-2.on.aws
3.选择保存更改。
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET",
"PUT",
"POST",
"DELETE",
"HEAD"
],
"AllowedOrigins": [
"AccessEndpoint"
],
"ExposeHeaders": [
"last-modified",
"content-length",
"etag",
"x-amz-version-id",
"content-type",
"x-amz-request-id",
"x-amz-id-2",
"date",
"x-amz-cf-id",
"x-amz-storage-class",
"access-control-expose-headers"
],
"MaxAgeSeconds": 3000
}
]
3. 创建实例
3.1 创建 S3 访问权限管控实例
1.打开 Amazon S3 访问权限管控控制台,选择创建 S3 访问权限管控实例。
2.选择添加 IAM Identity Center 实例。对于 IAM Identity Center 实例 ARN,输入复制的InstanceARN,然后选择下一步。
3.选择下一步,将在后台创建 S3 访问权限管控实例。
4.选择取消。
3.2 注册位置
1.选择位置选项卡。
2.在注册位置页面上,执行以下操作:
- 对于 IAM角色中,选择新建或选择。
- 此角色允许 S3 访问权限管控实例访问您指定的位置范围。
3.选择注册位置继续。
3.3 创建管制
1.选择创建管制。
2.对于位置,选择浏览位置**,然后选择注册位置部分中注册的位置。然后选择选择**路径。
3.在路径页面上,执行以下执行:
- 对于目录身份类型,选择用户。
4.选择创建管制。
4. 访问 Amazon Transfer Family Web 应用程序
4.1 访问 Amazon Transfer Family Web 应用程序
打开 Amazon Transfer Family 控制台。 在左窗格中,选择Web应用程序。
搜索 Transfer Family Web 应用程序演示并选择访问端点。
3.在用户名框中输入您的****用户名,随后选择**下一步。
4.输的密码并选择登录。
5.完成上述步骤并成功登录后,看到Web 应用程序的登录页面。
测试Web 应用程序
1.输入文件夹名称并选择创建文件夹。
2.在创建的文件夹中,选择添加文档。
3.在本地计算机上选择任何文件,然后选择上传。
4.导航到S3存储桶并确认示例文件已成功上传。