Azure Blob 存储大文件上传

Azure Blob Storage large file upload

我正在开发一个应用程序,该应用程序将 运行 在 Azure 上运行并要求用户上传非常大的 .tiff 文件。我们将使用 blob 存储来存储文件。我一直在审查几个网站以确定处理这种情况的正确方法,这个 link 提供了一个很好的例子但是如果我在前端使用 angular js 来抓取并将它们分块到 sas 定位器和通过 javascript、http://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-shared-access-signature-part-2/ 上传。我的主要困惑集中在我应该给 SAS 以供用户执行上传的到期时间。我希望每次用户执行文件上传时创建一个不同的 SAS,并在文件上传后消失。我还想允许其他站点用户也查看这些文件。处理这两种情况的最佳方法是什么?此外,还有关于如何为容器和 blob 生成 SAS 定位器的示例,如果我需要将新的 blob 添加到容器,这更有意义吗?

听起来您可能想在容器上使用存储访问策略。这允许您在创建 SAS 后修改 SAS 的到期时间。看看http://azure.microsoft.com/en-us/documentation/articles/storage-manage-access-to-resources/#use-a-stored-access-policy.

使用存储访问策略,您可以创建一个过期时间较长且仅对上传操作具有写权限的 SAS,然后让您的应用程序检查文件何时完成上传,并将过期时间更改为撤销 SAS。

您可以为正在站点上查看文件的用户创建单独的 SAS 和仅具有读取权限的存储访问策略。在这种情况下,您可以提供一个较长的到期时间,并仅在需要时更改或撤销它。