使用 REST API 列出 Azure 拒绝分配
即使角色分配向用户授予了访问权限,Azure 拒绝分配也会阻止用户执行特定的 Azure 资源操作。 本文介绍如何使用 REST API 列出拒绝分配。
注意
不能直接创建自己的拒绝分配。 有关详细信息,请参阅 Azure 拒绝分配。
先决条件
如要获取拒绝分配的相关信息,必须具有:
Microsoft.Authorization/denyAssignments/read
权限,大多数 Azure 内置角色都包含该权限。
必须使用以下版本:
2018-07-01-preview
或更高版本2022-04-01
是第一个稳定版本
有关详细信息,请参阅 Azure RBAC REST API 的 API 版本。
列出单个拒绝分配
若要列出单个拒绝分配,请使用拒绝分配 - 获取 REST API。
从下面的请求开始:
GET https://management.chinacloudapi.cn/{scope}/providers/Microsoft.Authorization/denyAssignments/{deny-assignment-id}?api-version=2022-04-01
在 URI 中,将 {scope} 替换为要列出拒绝分配的范围。
作用域 类型 subscriptions/{subscriptionId}
订阅 subscriptions/{subscriptionId}/resourceGroups/myresourcegroup1
资源组 subscriptions/{subscriptionId}/resourceGroups/myresourcegroup1/providers/Microsoft.Web/sites/mysite1
资源 将 {deny-assignment-id} 替换为要检索的拒绝分配标识符。
列出多个拒绝分配
若要列出多个拒绝分配,请使用拒绝分配 - 列出 REST API。
先处理下述请求之一:
GET https://management.chinacloudapi.cn/{scope}/providers/Microsoft.Authorization/denyAssignments?api-version=2022-04-01
具有可选参数:
GET https://management.chinacloudapi.cn/{scope}/providers/Microsoft.Authorization/denyAssignments?api-version=2022-04-01&$filter={filter}
在 URI 中,将 {scope} 替换为要列出拒绝分配的范围。
作用域 类型 subscriptions/{subscriptionId}
订阅 subscriptions/{subscriptionId}/resourceGroups/myresourcegroup1
资源组 subscriptions/{subscriptionId}/resourceGroups/myresourcegroup1/providers/Microsoft.Web/sites/mysite1
资源 将 {filter} 替换为筛选拒绝分配列表时要应用的条件。
筛选器 说明 (无筛选器) 列出指定范围之内、之上和之下的所有拒绝分配。 $filter=atScope()
仅列出指定范围内及其上的拒绝分配。 不包含子范围处的拒绝分配。 $filter=assignedTo('{objectId}')
列出指定用户或服务主体的拒绝分配。
如果用户属于包含拒绝分配的组,则也会列出该拒绝分配。 此筛选器对于组是可传递的,这意味着如果用户是组的成员,并且该组是包含拒绝分配的另一个组的成员,则该拒绝分配也会列出。
此筛选器仅接受用户或服务主体的对象 ID。 不能传递组的对象 ID。$filter=atScope()+and+assignedTo('{objectId}')
列出指定范围内指定用户或服务主体的拒绝分配。 $filter=denyAssignmentName+eq+'{deny-assignment-name}'
列出具有指定名称的拒绝分配。 $filter=principalId+eq+'{objectId}'
列出指定用户、组或服务主体的拒绝分配。
列出根范围 (/) 处的拒绝分配
提升访问权限,如提升访问权限以管理所有 Azure 订阅和管理组所述。
使用以下请求:
GET https://management.chinacloudapi.cn/providers/Microsoft.Authorization/denyAssignments?api-version=2022-04-01&$filter={filter}
将 {filter} 替换为筛选拒绝分配列表时要应用的条件。 需使用筛选器。
筛选器 说明 $filter=atScope()
仅列出根范围处的拒绝分配。 不包含子范围处的拒绝分配。 $filter=denyAssignmentName+eq+'{deny-assignment-name}'
列出具有指定名称的拒绝分配。 删除已提升的访问权限。