【问题标题】:Azure setting recursive ACL results in 403 - updating goes okay thoughAzure 设置递归 ACL 导致 403 - 虽然更新没问题
【发布时间】:2020-11-27 18:57:43
【问题描述】:

我正在使用 Powershell 中的 Az.Storage cmdlet 来设置 Azure Data Lake gen 2 存储帐户的权限。我通过我的 Azure AD 帐户拥有“所有者”权限以及“数据存储所有者”。

我可以毫无问题地运行 cmdlet“Update-AzDataLakeGen2AclRecursive”,但如果我尝试使用“set-AzDataLakeGen2AclRecursive”“替换”权限,则会收到以下错误:

Set-AzDataLakeGen2AclRecursive : An error occurred while recursively changing the access control list. See the InnerException of type Azure.RequestFailedException with Status=403 
and ErrorCode=SetAclMissingAces for more information.  You can resume changing the access control list using ContinuationToken= after addressing the error.
At file.ps1:62 char:9
+         Set-AzDataLakeGen2AclRecursive -Context $context -FileSystem  ...
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : CloseError: (:) [Set-AzDataLakeGen2AclRecursive], DataLakeAclChangeFailedException
    + FullyQualifiedErrorId : DataLakeAclChangeFailedException,Microsoft.WindowsAzure.Commands.Storage.Blob.Cmdlet.SetAzDataLakeGen2AclRecursiveCommand

我不完全确定为什么在这种情况下我会得到 403,因为看起来我已经拥有正确的帐户权限。 (已使用同一帐户创建了存储帐户 - 并阅读了文档,发现需要“数据存储所有者”)

这里有什么想法吗?

【问题讨论】:

    标签: azure powershell azure-data-lake-gen2


    【解决方案1】:

    要回答这个问题 - 您必须首先确保您的 AD Principal 具有容器级别的权限才能访问它。

    对我来说 - 这意味着在我使用“Set-”cmdlet 之前尝试修改的容器上授予我的 AAD 帐户读/写/执行 + 默认权限。

    【讨论】:

      猜你喜欢
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-01
      • 2019-03-19
      • 2015-01-14
      • 1970-01-01
      • 2020-11-01
      相关资源
      最近更新 更多