Azure-szerepkör-hozzárendelések listázása az Azure CLI használatával

Az Azure-beli szerepköralapú hozzáférés-vezérlés (Azure RBAC) az Azure-erőforrásokhoz való hozzáférés kezeléséhez használt engedélyezési rendszer. Annak meghatározásához, hogy a felhasználók, csoportok, szolgáltatásnevek vagy felügyelt identitások milyen erőforrásokhoz férhetnek hozzá, sorolja fel a szerepkör-hozzárendeléseiket. Ez a cikk bemutatja, hogyan listázhatja a szerepkör-hozzárendeléseket az Azure CLI használatával.

Feljegyzés

Ha a szervezet kiszervezett felügyeleti funkciókkal rendelkezik egy Azure Lighthouse-t használó szolgáltatónak, az adott szolgáltató által engedélyezett szerepkör-hozzárendelések itt nem jelennek meg. Hasonlóképpen, a szolgáltatói bérlő felhasználói nem fogják látni az ügyfél bérlőjében lévő felhasználók szerepkör-hozzárendeléseit, függetlenül attól, hogy milyen szerepkörhöz lettek hozzárendelve.

Előfeltételek

Szerepkör-hozzárendelések listázása egy felhasználóhoz

Egy adott felhasználó szerepkör-hozzárendeléseinek listázásához használja az az szerepkör-hozzárendelési listát:

az role assignment list --assignee {assignee}

By default, only role assignments for the current subscription will be displayed. To view role assignments for the current subscription and below, add the --all parameter. To include role assignments at parent scopes, add the --include-inherited parameter. To include role assignments for groups of which the user is a member transitively, add the --include-groups parameter.

The following example lists the role assignments that are assigned directly to the patlong@contoso.com user:

az role assignment list --all --assignee patlong@contoso.com --output json --query '[].{principalName:principalName, roleDefinitionName:roleDefinitionName, scope:scope}'
[
  {
    "principalName": "patlong@contoso.com",
    "roleDefinitionName": "Backup Operator",
    "scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales"
  },
  {
    "principalName": "patlong@contoso.com",
    "roleDefinitionName": "Virtual Machine Contributor",
    "scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales"
  }
]

Erőforráscsoport szerepkör-hozzárendeléseinek listázása

Az erőforráscsoport hatókörében található szerepkör-hozzárendelések listázásához használja az az szerepkör-hozzárendelési listát:

az role assignment list --resource-group {resourceGroup}

The following example lists the role assignments for the pharma-sales resource group:

az role assignment list --resource-group pharma-sales --output json --query '[].{principalName:principalName, roleDefinitionName:roleDefinitionName, scope:scope}'
[
  {
    "principalName": "patlong@contoso.com",
    "roleDefinitionName": "Backup Operator",
    "scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales"
  },
  {
    "principalName": "patlong@contoso.com",
    "roleDefinitionName": "Virtual Machine Contributor",
    "scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales"
  },
  
  ...

]

Előfizetés szerepkör-hozzárendeléseinek listázása

Ha egy előfizetés hatókörében szeretné listázni az összes szerepkör-hozzárendelést, használja az az szerepkör-hozzárendelési listát. Az előfizetés-azonosító lekéréséhez az Azure Portal Előfizetések paneljén vagy az az-fióklistát használhatja.

az role assignment list --scope "/subscriptions/{subscriptionId}"

Example:

az role assignment list --scope "/subscriptions/00000000-0000-0000-0000-000000000000" --output json --query '[].{principalName:principalName, roleDefinitionName:roleDefinitionName, scope:scope}'
[
  {
    "principalName": "admin@contoso.com",
    "roleDefinitionName": "Owner",
    "scope": "/subscriptions/00000000-0000-0000-0000-000000000000"
  },
  {
    "principalName": "Subscription Admins",
    "roleDefinitionName": "Owner",
    "scope": "/subscriptions/00000000-0000-0000-0000-000000000000"
  },
  {
    "principalName": "alain@contoso.com",
    "roleDefinitionName": "Reader",
    "scope": "/subscriptions/00000000-0000-0000-0000-000000000000"
  },

  ...

]

Felügyeleti csoport szerepkör-hozzárendeléseinek listázása

Ha egy felügyeleti csoport hatókörében szeretné listázni az összes szerepkör-hozzárendelést, használja az az szerepkör-hozzárendelési listát. A felügyeleti csoport azonosítójának lekéréséhez megtalálhatja az Azure Portal Felügyeleti csoportok paneljén, vagy használhatja az az account management-group listát.

az role assignment list --scope /providers/Microsoft.Management/managementGroups/{groupId}

Example:

az role assignment list --scope /providers/Microsoft.Management/managementGroups/sales-group --output json --query '[].{principalName:principalName, roleDefinitionName:roleDefinitionName, scope:scope}'
[
  {
    "principalName": "admin@contoso.com",
    "roleDefinitionName": "Owner",
    "scope": "/providers/Microsoft.Management/managementGroups/sales-group"
  },
  {
    "principalName": "alain@contoso.com",
    "roleDefinitionName": "Reader",
    "scope": "/providers/Microsoft.Management/managementGroups/sales-group"
  }
]

Felügyelt identitás szerepkör-hozzárendeléseinek listázása

Tegye a következők egyikét:

  1. Kérje le a rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitás egyszerű azonosítóját.

    A felhasználó által hozzárendelt felügyelt identitás főazonosítójának lekéréséhez használhatja az az ad sp listát vagy az identity listát.

    az ad sp list --display-name "{name}" --query [].id --output tsv
    

    A rendszer által hozzárendelt felügyelt identitás főazonosítójának lekéréséhez használhatja az az ad sp listát.

    az ad sp list --display-name "{vmname}" --query [].id --output tsv
    
  2. A szerepkör-hozzárendelések listázásához használja az az szerepkör-hozzárendelési listát.

    Alapértelmezés szerint csak az aktuális előfizetés szerepkör-hozzárendelései jelennek meg. Az aktuális előfizetés szerepkör-hozzárendeléseinek megtekintéséhez adja hozzá a paramétert --all . Az örökölt szerepkör-hozzárendelések megtekintéséhez adja hozzá a paramétert --include-inherited .

    az role assignment list --assignee {objectId}
    

Következő lépés