使用Azure

时间:2017-04-11 17:15:04

标签: azure azure-storage azure-storage-blobs

我想上传一些静态图片,稍后我会通过一些移动应用访问这些图片。我有一个很少使用的Azure帐户,所以我认为这是最好的地方,因此我将它们上传到Azure存储中的“文件共享”。

我天真以为我可以通过简单的网络请求网址

访问这些文件
https://myplace.file.core.windows.net/app/images/bnb/shop/bugle_200_2.jpg

所有这些让我感到BadRequest错误。我意识到我可以为每个文件创建一个共享访问签名(SAS),但这似乎完全矫枉过正。

是否有更好的Azure功能可供使用?我不想使用Azure API来获取这些文件

2 个答案:

答案 0 :(得分:3)

为@ CtrlDot添加更多积分,这是一个很好的答案。

我完全同意您应该使用Blob Storage来存储静态内容。

在容器权限上,我实际上建议将权限(ACL)设置为Blob,以便用户只能查看他们拥有URL的blob而不能枚举容器中的所有blob(将容器ACL设置为Container将使用户能够在容器中列出可能不是您想要的行为的blob。)

除此之外,使用Blob存储有两个明显的优势:

  1. 自定义域:您可以将blob存储映射到自定义域(例如static content.mywebsite.com),并使用它来提供内容,而不是使用Azure Blob存储标准端点(您的帐户)。 blob.core.windows.net)。
  2. CDN :您还可以CDN启用Blob存储端点。然后,内容将在遍布全球的许多CDN节点上进行复制,并将从靠近用户的节点提供,从而改善用户体验。

答案 1 :(得分:2)

我认为您应该使用的服务是blob存储,而不是文件存储。根据{{​​3}},文件存储对SMB共享意味着更多。

设置Azure blob存储时,您有几个不同的选项。如果这些静态图像没有任何敏感/安全,您可以考虑制作the documentation并简单地访问这样的文件。

如果您需要身份验证,则需要使用azure存储访问密钥或azure存储访问令牌。在这两者中,存储访问令牌是迄今为止最安全的。

您不需要为每个文件创建SAS令牌,而是授予它对容器的读取权限。再一次,您必须根据应用程序的安全性/敏感性需求进行定制。

相关问题