如何在Windows Azure上为文件夹授予读写权限?

4

我正在将一个MVC 3.0 Web应用程序部署到Windows Azure。我有一个操作方法,它可以接受用户上传的文件并将其存储在我的Web应用程序内的文件夹中。

我该如何给运行过程中的文件夹赋予RW权限?我阅读了关于启动任务的信息,并有了基本的理解,但我不知道:

  1. 如何授予权限本身,以及
  2. 应该将权限授予哪个运行过程(用户)。

非常感谢您的帮助。

编辑

除了@David下面的答案,我发现这个链接非常有用:

https://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage/

1个回答

6
对于本地存储,我建议不要过于纠结于授予各个目录访问权限的问题。相反,应该利用专门为您运行的VM提供的存储资源。对于给定的实例大小,您可以获得从20GB到近2TB的本地存储空间(完整的大小细节在此处)。要利用这个空间,您需要在项目中创建本地存储资源: enter image description here 然后,在代码中,获取指向该存储的驱动器字母即可:
var storageRoot = RoleEnvironment.GetLocalResource("moreStorage").RootPath;

现在您可以自由使用该存储空间。而且...这一切都不需要任何启动任务或授权。

现在来说一下注意事项:这是每个运行实例本地的存储,不会在实例之间共享。此外,它是非持久性的 - 如果磁盘崩溃,数据就会丢失。

对于持久性、耐用性文件存储,Blob Storage是一个更好的选择,因为它是耐用的(在数据中心内进行三重复制,并且在另一个数据中心进行地理复制),并且它是您的角色实例外部的存储,可从任何实例(或任何应用程序,包括您的本地应用程序)访问。

由于Blob存储是通过容器和容器内的Blob进行组织,因此相当容易组织您的Blob(并将几乎任何内容存储在给定的Blob中,每个Blob最高可达200GB)。此外,上传/下载文件到/从Blob非常简单,可以通过文件流或本地文件(在上面所分配的存储资源中)进行操作。


1
嗨@David,你是个牛人!非常感谢你提供如此详细的答案,干杯! - user386167

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接