【问题标题】:Is it possible to use Azure Blob Storage on a website that has no authentication?是否可以在没有身份验证的网站上使用 Azure Blob 存储?
【发布时间】:2022-08-18 22:18:00
【问题描述】:

我需要为访问我网站的任何人创建一种将图像上传到 Azure Blob 容器的方法。该网站将有input validations on the file

我曾考虑使用 Azure 函数将经过验证的文件写入 Blob 容器,但我似乎无法找到一种方法来执行此操作而不将函数 URL 公开(类似于 this question.

我会使用系统分配的托管身份 (SAMI) 对存储帐户的函数进行身份验证,但正因为如此,任何人都可以获取函数 URL 并绕过验证并上传。

这在现实世界中是如何完成的?

    标签: file-upload azure-functions azure-blob-storage


    【解决方案1】:

    如果我理解正确,用户通过 HTTP POST 调用将文件上传到您的服务器,该服务器对其进行验证。您想使用 Azure 函数将经过验证的文件上传到 Blob 存储。

    在这种情况下,您可以限制对 Azure Function 的访问;以便只能从您的服务器的 IP 调用它。这样用户就无法访问该功能。这可以通过网络设置和is available on all Azure Function plans 来完成。

    您还可以考虑在 Azure 函数中实现验证逻辑。

    最后(也许我应该从这个开始),如果您只考虑编写一个 Azure 函数来将数据上传到存储帐户,您可能应该首先考虑使用 Blob 服务 REST API,特别是 PUT Blob endpoint。您还可以使用针对不同语言/生态系统的官方存储帐户 SDK 来执行此操作。

    【讨论】:

      猜你喜欢
      • 2020-05-26
      • 2013-11-29
      • 2021-06-03
      • 1970-01-01
      • 2020-08-06
      • 1970-01-01
      • 2014-02-20
      • 1970-01-01
      相关资源
      最近更新 更多