我有一个Azure存储帐户,并希望向同事授予读取权限。所有身份都在同一个Azure Active Directory中,因此很容易将他添加到Azure门户的Access Control刀片中的“Reader”角色。
当他打开Microsoft Azure Storage Explorer时,可以看到订阅和存储帐户,但无法展开Blob容器的节点。例外说:
无法获取存储帐户的密钥。请检查一下 正确的权限
答案 0 :(得分:4)
这是预期的行为。基本上,为了列出存储密钥,用户应该处于允许listKeys
操作的角色中。内置Reader
角色无权执行listKeys
操作。
此决定背后的基本原理(有点令人费解)是Reader
角色的用户应该只能Read
而不执行任何插入/更新或删除。考虑到某人是否拥有存储帐户的帐户密钥,他们可以执行这些操作。因此,Reader
角色中的用户未被授予列出帐户密钥的权限。
您可以做的是创建一个具有读取/列表权限的Shared Access Signature (SAS)
,并与您的同事共享该SAS URL。然后,他们将能够访问该存储帐户中的数据,但无法执行任何创建/更新/删除操作。
答案 1 :(得分:2)
现在看起来可以(预览中)。您的AD用户可以获得"存储Blob数据读取器"特权。 https://azure.microsoft.com/en-us/blog/announcing-the-preview-of-aad-authentication-for-storage/