2015-02-24 102 views
1

我喜欢为少数外部用户在Internet中设置Azure少数Azure存储容器。我想设置基于容器的共享密钥并与他们共享,以便他们可以将文件上传到我的容器。基于Azure存储容器的共享密钥

我不希望他们拥有Azure帐户和其他特权,只是将文件推送到他们必须拥有的容器中。

将Azure支持此方案吗?阅读大量的认证和其他可能性,但没有线索。

回答

0

您无需共享天蓝色的登录凭证即可将文件上传到容器。

但是,您只能授予对Azure存储帐户的访问权限,而不能授予单个容器。为了做到这一点,你需要共享存储帐户'访问密钥'

enter image description here
与其他用户。然后他们可以将文件上传到同一存储帐户中他们所需的任何容器中。

您可以通过使用BlobTransferUtility将文件上传到存储容器来尝试此操作。

3

您应该使用带有存储访问策略的共享访问签名(SAS)。你永远不应该分配你的存储帐户密钥 - 任何拥有这个密钥的人基本上都拥有你的存储帐户的管理权限

使用存储访问策略,您可以在存储帐户或容器级别定义策略(访问级别,到期日期)。然后,您可以使用SAS,该SAS基本上是引用存储的访问策略并使用存储帐户访问密钥签名的URI。这可以让您随时更改或撤消政策。

完整的文档在这里:
https://msdn.microsoft.com/en-us/library/azure/ee393343.aspx

1

BenV是正确的,你应该非常小心地限制访问您的存储帐户的关键。创建SAS令牌是为了将访问权限授予容器,斑点,表格和队列等资源。 SAS令牌既可以有时间限制(例如 - 2小时),也可以只包含一部分权限(读取,插入,删除等)。有关更多信息,请参阅以下两篇文章:Access control overviewSAS tutorial