我对使用Azure Blob存储的一个担忧是热链接。
将静态内容(图像,视频,音频,大型JS和CSS文件等)放在公共容器中似乎是一个好主意,但是没有什么能阻止其他网站链接这些内容并在其中使用它网站。因此,一些网站管理员在他们的网站上使用我的内容会花费我的钱。
热链接的常见保护是按Referer
HTTP标头进行过滤。 如何在Microsoft Azure Blob存储中实现?
显然,it is possible in Amazon S3。
我知道这对谷歌图片搜索会有害,因为它无法显示我的照片,但是......我可以忍受这种情况。
干杯。
答案 0 :(得分:2)
Windows Azure不支持像在Amazon S3中那样向Blob存储添加逻辑。但是对于这种特定情况,您通常会使用SAS (Shared Access Signatures)。
您需要将容器更改为私人访问权限。这意味着只有拥有两个密钥之一或者您有SAS时才能访问文件。因此,通常情况下,您的Web服务器会生成SAS并将其应用于图像的URL。通过使用SAS签名,您可以允许在特定时间内访问文件(比方说10分钟),这会阻止热链接。
使用SAS的文件的网址如下所示:
答案 1 :(得分:1)
与SAS一起,您可以对blob使用缓存控制标头,以最大限度地减少blob存储的私有静态内容的读取操作。这可能会有所帮助 - TechNet wiki article. 请告诉我你的意见。