如何从访问控制选项卡获取存储帐户容器的角色分配
How to get Storage Account containers' role assignments from Access Control tab
我正在尝试使用 powershell 从存储帐户容器的 Access Control
选项卡中获取所有对象。
使用命令:
Get-AzRoleAssignment -ResourceGroupName 'devtest' -ResourceName 'sa-name' -ResourceType 'Microsoft.Storage/storageAccounts'
我从以下位置获取所有对象:
- 存储帐户
- 容器
如您所见,使用此命令我在同一调用中获取 Storage Account
和 Container
的范围。
我尝试使用如下命令:
Get-AzRoleAssignment -ResourceGroupName 'devtest' -ResourceName 'SA-name' -ResourceType 'Microsoft.Storage/storageAccounts' | Where-Object -Property Scope -Like '*containers/container-name'
但我对结果不满意,因为我没有得到例如这个容器的 Owner
,因为它继承自不同的资源
我的问题是,如何使用 powershell、CLI 或 REST API 对所有对象从 IAM
blade 获取特定容器的 Role Assignments
对象?
您可以列出特定容器上的 RBAC,方法是列出存储帐户的所有角色分配并排除除您想查看的容器之外的所有容器:
Get-AzRoleAssignment -ResourceGroupName "<your-resource-group-name>" -ResourceType "Microsoft.Storage/storageAccounts" -ResourceName "<your-storage-account-name>" | Where-Object { $_.Scope -like '*/containers/<your-container-name>' -or -not ($_.Scope -like '*/storageAccounts*/default/containers/*') }
我正在尝试使用 powershell 从存储帐户容器的 Access Control
选项卡中获取所有对象。
使用命令:
Get-AzRoleAssignment -ResourceGroupName 'devtest' -ResourceName 'sa-name' -ResourceType 'Microsoft.Storage/storageAccounts'
我从以下位置获取所有对象:
- 存储帐户
- 容器
如您所见,使用此命令我在同一调用中获取 Storage Account
和 Container
的范围。
我尝试使用如下命令:
Get-AzRoleAssignment -ResourceGroupName 'devtest' -ResourceName 'SA-name' -ResourceType 'Microsoft.Storage/storageAccounts' | Where-Object -Property Scope -Like '*containers/container-name'
但我对结果不满意,因为我没有得到例如这个容器的 Owner
,因为它继承自不同的资源
我的问题是,如何使用 powershell、CLI 或 REST API 对所有对象从 IAM
blade 获取特定容器的 Role Assignments
对象?
您可以列出特定容器上的 RBAC,方法是列出存储帐户的所有角色分配并排除除您想查看的容器之外的所有容器:
Get-AzRoleAssignment -ResourceGroupName "<your-resource-group-name>" -ResourceType "Microsoft.Storage/storageAccounts" -ResourceName "<your-storage-account-name>" | Where-Object { $_.Scope -like '*/containers/<your-container-name>' -or -not ($_.Scope -like '*/storageAccounts*/default/containers/*') }