使用 PowerShell 从 Azure 中存储帐户的管理 ACL 列表中删除 ACL 条目
Posted
技术标签:
【中文标题】使用 PowerShell 从 Azure 中存储帐户的管理 ACL 列表中删除 ACL 条目【英文标题】:Delete ACL entry from the manage ACL list of the storage account in Azure using PowerShell 【发布时间】:2021-12-21 07:09:29 【问题描述】:对于特定目录/文件夹,有提供权限的 ACL 列表。要求是从管理访问控制列表中删除特定的 ACL 条目。
以下命令仅有助于删除 ACL 的权限。但该条目仍会出现在管理访问控制列表中
$filesystemName = "my-container"
$userID = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -EntityId $userID -Permission "---"
Remove-AzDataLakeGen2AclRecursive -Context $ctx -FileSystem $filesystemName -Acl $acl
您能否帮助我们使用 PowerShell 命令删除条目..?
【问题讨论】:
你在哪里不删除它? 理想情况下,应从存储帐户的管理访问控制列表中删除该条目。删除命令只会使权限为空。实体/ACL 仍将出现在列表中 【参考方案1】:试试这个从 ACL 列表中清除条目的示例
$id = "xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
# Create the new ACL object.
[Collections.Generic.List[System.Object]]$aclnew =$acl
foreach ($a in $aclnew)
if ($a.AccessControlType -eq "User"-and $a.DefaultScope -eq $false -and $a.EntityId -eq $id)
$aclnew.Remove($a);
break;
Update-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $dirname -Acl $aclnew
更多详情请参考此文档:https://docs.microsoft.com/en-us/azure/storage/blobs/data-lake-storage-acl-powershell
【讨论】:
这种方法的输出也相同。基本上权限已被删除,或者可以被告知它会更改为 (---) 但 AD 组条目仍将出现在管理访问控制列表中。 你能展示一下输出的样子吗?以上是关于使用 PowerShell 从 Azure 中存储帐户的管理 ACL 列表中删除 ACL 条目的主要内容,如果未能解决你的问题,请参考以下文章
使用 PowerShell 从 Azure 中存储帐户的管理 ACL 列表中删除 ACL 条目
使用 powershell 在 Azure 中不同订阅的存储容器之间复制 blob
从存储容器恢复 Azure Linux webapp 备份失败 PowerShell
如何使用 PAT 从本地 Azure Artifacts 存储库在 docker 容器中安装 powershell 模块?