Azure存储 - 使用文件结构公开容器

时间:2016-11-01 23:15:29

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

我尝试上传一个文件夹结构,其中包含一个html文件,该文件在私有的azure blob存储容器中引用该文件夹结构中的css和javascript文件。

当浏览html文件时,我希望它能够检索css和javascript文件,就像你看看它是否是一个html文件作为网站的一部分。

如果容器是完全公开的,我可以使这个工作,但是当容器是私有的并且我提供SAS令牌时,我很难达到相同的结果。

假设容器包含一个名为" main.html"的html文件。和一个名为" css / mystyles.css"的css文件; (main.html将有css文件的链接标记指向以下相对URL" css / mystyles.css")。

如果我为容器创建一个SAS令牌(为了简单起见,我们只需要调用它" mySAS")然后导航到main.html文件,附加SAS令牌,如下所示:
https://my-storage-account.blob.core.windows.net/container-name/main.html?mySAS

main.html文件将正确加载,因为SAS令牌将在末尾附加,但css文件不会,因此它将返回404。

我想我已经知道了答案,但是技术上是否可以存储和呈现html文件及其所有相关文件而不将其放在公共容器中?

我应该注意,修改html文件中指定的路径不是一个选项,因为它们不是我无法控制的文件,所以我不知道它们看起来像什么就像提前一样。


有一些(非常混乱和不受欢迎的)混合解决方案,我把它放在一个私有容器中,然后按需公开,然后将其切换回私人容器。

或者选择更极端的混合解决方案,我将其存储在私有容器中(永远不会暴露),然后无论何时请求,都将内容复制到一个短暂的公共容器中(降低风险)有人可能会在第一个混合场景中记下公共容器,然后在它可能无法为他们提供时再次访问它。)

如果可能的话,我真的更愿意使用私有容器和SAS令牌解决方案。

0 个答案:

没有答案