我认为我们在SAAS系统中使用Azure存储的方式略有不妥。我们为每个客户创建了一个存储帐户(Securtiy是主要考虑因素)和每个系统区域的容器,例如车辆,工作等
进一步阅读后,似乎有人建议我们应该为所有客户使用一个帐户。每个客户端都应该有一个容器(所以我们可以通过编程方式创建它)然后我们保护它。然后应该使用“虚拟”文件夹结构来构造文件,例如容器名为“客户端A”。然后存储作业的文件(在系统的工作区域中),如工作/作业/ {entity id} /blah.pdf。这听起来合理吗?
如果是这样,我们现在有大约10个帐户需要重组。是否有任何工具可以让我们轻松地将一个帐户内容复制到另一个容器帐户?我很欣赏我们可能无法在帐户之间移动文件(因为我们很久以前就设置它们所以不能使用本机复制功能)所以我想某种副本。所有帐户中都有GB文件。
答案 0 :(得分:5)
为每个客户端保留不同的存储帐户可能不是一个坏主意。这样做(对我而言)的好处是:
也存在一些缺点。其中一些是:
现在回答您关于工具的问题,您可以自己编写一些使用复制Blob功能的东西。此功能允许您异步复制存储帐户中的blob数据。基本上你会这样做:
如果您是PowerShell粉丝,您可以查看Cerebrata的Azure管理Cmdlet(http://www.cerebrata.com/Products/AzureManagementCmdlets),其中包含此功能。我本来可以推荐Cerebrata的Azure Management Studio,但我还没有尝试过这个功能[披露:我是Cerebrata团队的开发者之一]。
希望这有帮助。
答案 1 :(得分:2)
加入Gaurav Mantri回答...
您可以为客户提供共享存储帐户,并使用共享访问签名(SAS)来限制对特定容器或blob(以及表和队列)的访问... http://msdn.microsoft.com/en-us/library/windowsazure/hh508996.aspx