需要建议:如何与远程用户共享可能很大的报表?

Need advice: How to share a potentially large report to remote users?

我正在征求有关我正在从事的项目部分可能更好的解决方案的建议。我会先介绍一些背景,然后是我目前的想法。

背景

解决方案的目标

我目前的解决方案

有更好的解决方案吗??

您可以使用 AWS S3 和 Cloudfront。使用 AWS SDK 和 API 可以轻松地将文件加载到 S3 中。然后,您可以使用 API 生成指向文件的安全链接,这些文件只能在特定时间打开,并且可以选择从特定 IP 打开。
如果需要,也可以使用生命周期规则在特定时间后自动清理 S3 上的文件。
AWS 的存储和传输价格相当便宜,请记住,S3 存储成本是按月计算的,因此如果您只加载一个对象几天,那么您只需支付几天的费用。
S3: http://aws.amazon.com/s3/pricing

云端:https://aws.amazon.com/cloudfront/pricing/

以下是适用于 AWS 的 SDK 列表: https://aws.amazon.com/tools/#sdk

或者您可以将他们的命令行工具用于 Windows 批处理或 powershell 脚本: https://aws.amazon.com/tools/#cli

以下是有关如何创建私人内容网址的一些信息: http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html

我建议结合使用您的#1 和#2 选项来构建此服务。您可以利用非常便宜的 AWS S3 进行处理和传输数据。

示例:100GB 的费用约为 3 美元。

此外,AWS S3 也将是有益的,因为您可以承受本地环境中的任何灾难,您的数据在 S3 中将是安全的。

为了安全起见,您可以在 AWS S3 中利用数据加密和签名 URLS。