仅通过 ACL 授予对 Azure Data Lake Gen2 Access 的访问权限(无 RBAC)

2024-01-11

我的目标是限制对 Azure Data Lake Gen 2 存储的访问在目录级别(根据微软的承诺,这应该是可能的)。

我有两个目录data, and sensitive在第二代数据湖容器中。对于特定用户,我想授予对该目录的读取权限data并阻止对目录的任何访问sensitive.

沿着文档 https://learn.microsoft.com/en-us/azure/storage/blobs/data-lake-storage-access-control#access-control-lists-on-files-and-directories我删除了该用户的所有 RBAC 分配(在存储帐户以及数据湖容器上),以便我对目录没有继承的读取访问权限。然后我添加了一个Read-ACL语句data该用户的目录。

我的期望:

  • 用户可以直接从网站下载文件data目录。
  • 用户无法访问该文件sensitive目录

现实: 当我尝试从数据目录下载文件时,我得到一个403 ServiceCode=AuthorizationPermissionMismatch

 az storage blob directory download -c containername -s data --account-name XXX --auth-mode login -d "./download" --recursive


RESPONSE Status: 403 This request is not authorized to perform this operation using this permission.

我希望这应该有效。否则,我只能通过分配 Storage Blob Reader 角色来授予访问权限,但这适用于容器内的所有目录和文件,并且不能被 ACL 语句覆盖。我这里有什么不对吗?


根据我的研究,如果要授予安全主体对文件的读取访问权限,我们需要向安全主体授予对容器以及通向该文件的文件夹层次结构中的每个文件夹的执行权限。欲了解更多详情,请参阅document https://learn.microsoft.com/en-us/azure/storage/blobs/data-lake-storage-access-control#common-scenarios-related-to-permissions

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

仅通过 ACL 授予对 Azure Data Lake Gen2 Access 的访问权限(无 RBAC) 的相关文章

随机推荐