Azure:为存储帐户中的斑点分配用户读取/下载访问权限

我们的SQL Server每晚备份到Blob存储。

我希望一些工作人员(已经在Active Directory中)能够查看备份文件列表并将其下载到他们的机器上。 然后他们可以在本地恢复数据库并对其进行testing。

这些成员不应该能够删除这些blob。 (显然,让团队成员无意中删除备份是一件坏事)

是否有可能提供一组用户读取blob容器的访问?

我可以调出存储帐户的访问控制(IAM)刀片,然后为用户分配“读者”angular色。

在这里输入图像说明

该用户现在可以查看存储帐户的初始刀片。

但是,如果他试图提出BLOB SERVICE \ Containers刀片,他会看到文字“ACCESS DENIED”。

是否有一些方法可以指定用户对容器的读取权限?

但是,如果他试图提出BLOB SERVICE \ Containers刀片,他会看到文字“ACCESS DENIED”。

这是一个按devise行为,angular色Reader只是可以查看关于资源的每一件事情,但不能改变任何东西,不能读取容器下的文件。

如果要让用户可以从此存储帐户读取文件,则应将angular色owner设置为这些帐户。

这些成员不应该能够删除这些blob。

目前,Azure不支持这一点。 如果我们希望用户可以从存储帐户读取文件,我们应该设置angular色owner 。 如果我们将用户设置为所有者,用户可以从该存储帐户中删除文件。

即使我们将CanNotDelete设置CanNotDelete存储帐户,用户仍然可以从中删除文件。 锁不限制资源如何执行自己的function。 资源变更受到限制,但资源操作不受限制。

这里有一个关于你的类似案例,请参考我的回答 。

作为解决方法,我们可以使用Azcopy或其他工具将备份文件下载到本地存储(计划任务),并让其他用户从本地存储下载备份文件。