Azure-roltoewijzingen weergeven met behulp van Azure CLI

Op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) is het autorisatiesysteem om de toegang tot Azure-resources te beheren. Als u wilt bepalen tot welke resources gebruikers, groepen, service-principals of beheerde identiteiten toegang hebben, vermeldt u hun roltoewijzingen. In dit artikel wordt beschreven hoe u roltoewijzingen weergeeft met behulp van Azure CLI.

Notitie

Als uw organisatie beheerfuncties heeft uitbesteed aan een serviceprovider die Gebruikmaakt van Azure Lighthouse, worden roltoewijzingen die zijn geautoriseerd door die serviceprovider, hier niet weergegeven.

Vereisten

Roltoewijzingen voor een gebruiker weergeven

Gebruik az role assignment list om de roltoewijzingen voor een specifieke gebruiker weer te geven:

az role assignment list --assignee {assignee}

Standaard worden alleen roltoewijzingen voor het huidige abonnement weergegeven. Als u roltoewijzingen voor het huidige abonnement en hieronder wilt weergeven, voegt u de --all parameter toe. Als u overgenomen roltoewijzingen wilt weergeven, voegt u de --include-inherited parameter toe.

In het volgende voorbeeld ziet u de roltoewijzingen die rechtstreeks aan de patlong@contoso.com gebruiker zijn toegewezen:

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"
  }
]

Roltoewijzingen voor een resourcegroep opvragen

Als u de roltoewijzingen wilt weergeven die bestaan in een resourcegroepbereik, gebruikt u az role assignment list:

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

In het volgende voorbeeld worden de roltoewijzingen voor de resourcegroep pharma-sales vermeld:

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"
  },
  
  ...

]

Roltoewijzingen weergeven voor een abonnement

Als u alle roltoewijzingen in een abonnementsbereik wilt weergeven, gebruikt u az role assignment list. Als u de abonnements-id wilt ophalen, kunt u deze vinden op de blade Abonnementen in Azure Portal of kunt u az account list gebruiken.

az role assignment list --subscription {subscriptionNameOrId}

Voorbeeld:

az role assignment list --subscription 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"
  },

  ...

]

Roltoewijzingen voor een beheergroep vermelden

Als u alle roltoewijzingen in een bereik van een beheergroep wilt weergeven, gebruikt u az role assignment list. Als u de beheergroep-id wilt ophalen, kunt u deze vinden op de blade Beheergroepen in Azure Portal of kunt u de lijst az account management-group gebruiken.

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

Voorbeeld:

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"
  }
]

Roltoewijzingen weergeven voor een beheerde identiteit

  1. Haal de principal-id op van de door het systeem toegewezen of door de gebruiker toegewezen beheerde identiteit.

    Als u de principal-id van een door de gebruiker toegewezen beheerde identiteit wilt ophalen, kunt u az ad sp list of az identity list gebruiken.

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

    Als u de principal-id van een door het systeem toegewezen beheerde identiteit wilt ophalen, kunt u az ad sp list gebruiken.

    az ad sp list --display-name "{vmname}" --query [].id --output tsv
    
  2. Gebruik az role assignment list om de roltoewijzingen weer te geven.

    Standaard worden alleen roltoewijzingen voor het huidige abonnement weergegeven. Als u roltoewijzingen voor het huidige abonnement en hieronder wilt weergeven, voegt u de --all parameter toe. Als u overgenomen roltoewijzingen wilt weergeven, voegt u de --include-inherited parameter toe.

    az role assignment list --assignee {objectId}
    

Volgende stappen