Inzicht in Azure-roltoewijzingen.

Met roltoewijzingen kunt u een principal (zoals een gebruiker, een groep, een beheerde identiteit of een service-principal) toegang verlenen tot een specifieke Azure-resource. In dit artikel worden de details van roltoewijzingen beschreven.

Roltoewijzing

Toegang tot Azure-resources wordt verleend door een roltoewijzing te maken en de toegang wordt ingetrokken door een roltoewijzing te verwijderen.

Een roltoewijzing heeft verschillende onderdelen, waaronder:

  • De principal of aan wie de rol is toegewezen.
  • De rol waaraan ze zijn toegewezen.
  • Het bereik waaraan de rol is toegewezen.
  • De naam van de roltoewijzing en een beschrijving waarmee u kunt uitleggen waarom de rol is toegewezen.

U kunt bijvoorbeeld Azure RBAC gebruiken om rollen toe te wijzen, zoals:

  • Gebruiker Sally heeft eigenaarstoegang tot het opslagaccount contoso123 in de resourcegroep ContosoStorage.
  • Iedereen in de groep Cloud Beheer istrators in Microsoft Entra ID heeft lezertoegang tot alle resources in de resourcegroep ContosoStorage.
  • De beheerde identiteit die is gekoppeld aan een toepassing, mag virtuele machines opnieuw opstarten binnen het abonnement van Contoso.

Hieronder ziet u een voorbeeld van de eigenschappen in een roltoewijzing wanneer deze wordt weergegeven met behulp van Azure PowerShell:

{
  "RoleAssignmentName": "00000000-0000-0000-0000-000000000000",
  "RoleAssignmentId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000",
  "Scope": "/subscriptions/11111111-1111-1111-1111-111111111111",
  "DisplayName": "User Name",
  "SignInName": "user@contoso.com",
  "RoleDefinitionName": "Contributor",
  "RoleDefinitionId": "b24988ac-6180-42a0-ab88-20f7382dd24c",
  "ObjectId": "22222222-2222-2222-2222-222222222222",
  "ObjectType": "User",
  "CanDelegate": false,
  "Description": null,
  "ConditionVersion": null,
  "Condition": null
}

Hieronder ziet u een voorbeeld van de eigenschappen in een roltoewijzing wanneer deze wordt weergegeven met behulp van de Azure CLI of de REST API:

{
  "canDelegate": null,
  "condition": null,
  "conditionVersion": null,
  "description": null,
  "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000",
  "name": "00000000-0000-0000-0000-000000000000",
  "principalId": "22222222-2222-2222-2222-222222222222",
  "principalName": "user@contoso.com",
  "principalType": "User",
  "roleDefinitionId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c",
  "roleDefinitionName": "Contributor",
  "scope": "/subscriptions/11111111-1111-1111-1111-111111111111",
  "type": "Microsoft.Authorization/roleAssignments"
}

In de volgende tabel wordt beschreven wat de eigenschappen van de roltoewijzing betekenen.

Eigenschappen Beschrijving
RoleAssignmentName
name
De naam van de roltoewijzing, een GUID (Globally Unique Identifier).
RoleAssignmentId
id
De unieke id van de roltoewijzing, die de naam bevat.
Scope
scope
De Azure-resource-id waarop de roltoewijzing is gericht.
RoleDefinitionId
roleDefinitionId
De unieke id van de rol.
RoleDefinitionName
roleDefinitionName
De naam van de rol.
ObjectId
principalId
De Microsoft Entra-object-id voor de principal waaraan de rol is toegewezen.
ObjectType
principalType
Het type Microsoft Entra-object dat de principal vertegenwoordigt. Geldige waarden zijn onder andere User, Groupen ServicePrincipal.
DisplayName Voor roltoewijzingen voor gebruikers, de weergavenaam van de gebruiker.
SignInName
principalName
De unieke principal-naam (UPN) van de gebruiker of de naam van de toepassing die is gekoppeld aan de service-principal.
Description
description
De beschrijving van de roltoewijzing.
Condition
condition
Voorwaarde-instructie gebouwd met behulp van een of meer acties van roldefinitie en kenmerken.
ConditionVersion
conditionVersion
Het versienummer van de voorwaarde. De standaardinstelling is 2.0 en is de enige ondersteunde versie.
CanDelegate
canDelegate
Niet geïmplementeerd.

Bereik

Wanneer u een roltoewijzing maakt, moet u het bereik opgeven waarop deze wordt toegepast. Het bereik vertegenwoordigt de resource of set resources waartoe de principal toegang heeft. U kunt een roltoewijzing toewijzen aan één resource, een resourcegroep, een abonnement of een beheergroep.

Fooi

Gebruik het kleinste bereik dat u nodig hebt om te voldoen aan uw vereisten.

Als u bijvoorbeeld een beheerde identiteit toegang moet verlenen tot één opslagaccount, is het een goede beveiligingspraktijk om de roltoewijzing te maken binnen het bereik van het opslagaccount, niet in het bereik van de resourcegroep of het abonnementsbereik.

Zie Bereik voor meer informatie over het bereik.

Rol die moet worden toegewezen

Een roltoewijzing is gekoppeld aan een roldefinitie. De roldefinitie geeft de machtigingen op die de principal moet hebben binnen het bereik van de roltoewijzing.

U kunt een ingebouwde roldefinitie of een aangepaste roldefinitie toewijzen. Wanneer u een roltoewijzing maakt, moet u voor sommige hulpprogramma's de roldefinitie-id gebruiken terwijl u met andere hulpprogramma's de naam van de rol kunt opgeven.

Zie Roldefinities begrijpen voor meer informatie over roldefinities.

Principal

Principals zijn onder andere gebruikers, beveiligingsgroepen, beheerde identiteiten, workloadidentiteiten en service-principals. Principals worden gemaakt en beheerd in uw Microsoft Entra-tenant. U kunt een rol toewijzen aan elke principal. Gebruik de Object-id-id van Microsoft Entra om de principal te identificeren waaraan u de rol wilt toewijzen.

Wanneer u een roltoewijzing maakt met behulp van Azure PowerShell, de Azure CLI, Bicep of een andere infrastructuur als codetechnologie (IaC), geeft u het principal-type op. Principal-typen omvatten Gebruiker, Groep en ServicePrincipal. Het is belangrijk om het juiste principal-type op te geven. Anders kunnen er onregelmatige implementatiefouten optreden, met name wanneer u met service-principals en beheerde identiteiten werkt.

Naam

De resourcenaam van een roltoewijzing moet een GUID (Globally Unique Identifier) zijn.

Resourcenamen voor roltoewijzing moeten uniek zijn binnen de Microsoft Entra-tenant, zelfs als het bereik van de roltoewijzing smaller is.

Fooi

Wanneer u een roltoewijzing maakt met behulp van De Azure-portal, Azure PowerShell of de Azure CLI, krijgt het aanmaakproces de roltoewijzing automatisch een unieke naam.

Als u een roltoewijzing maakt met bicep of een andere infrastructuur als codetechnologie (IaC), moet u zorgvuldig plannen hoe u uw roltoewijzingen noemt. Zie Azure RBAC-resources maken met Bicep voor meer informatie.

Gedrag bij verwijderen van resources

Wanneer u een gebruiker, groep, service-principal of beheerde identiteit verwijdert uit Microsoft Entra ID, is het een goed idee om roltoewijzingen te verwijderen. Ze worden niet automatisch verwijderd. Roltoewijzingen die naar een verwijderde principal-id verwijzen, worden ongeldig.

Als u de naam van een roltoewijzing opnieuw probeert te gebruiken voor een andere roltoewijzing, mislukt de implementatie. Dit probleem treedt waarschijnlijk op wanneer u Bicep of een ARM-sjabloon (Azure Resource Manager) gebruikt om uw roltoewijzingen te implementeren, omdat u de naam van de roltoewijzing expliciet moet instellen wanneer u deze hulpprogramma's gebruikt. Als u dit gedrag wilt omzeilen, moet u de oude roltoewijzing verwijderen voordat u deze opnieuw maakt of ervoor zorgen dat u een unieke naam gebruikt wanneer u een nieuwe roltoewijzing implementeert.

Omschrijving

U kunt een tekstbeschrijving toevoegen aan een roltoewijzing. Hoewel beschrijvingen optioneel zijn, is het een goed idee om ze toe te voegen aan uw roltoewijzingen. Geef een korte reden op waarom de principal de toegewezen rol nodig heeft. Wanneer iemand de roltoewijzingen controleert, kunnen beschrijvingen helpen om te begrijpen waarom ze zijn gemaakt en of ze nog steeds van toepassing zijn.

Voorwaarden

Sommige rollen ondersteunen voorwaarden voor roltoewijzing op basis van kenmerken in de context van specifieke acties. Een voorwaarde voor roltoewijzing is een extra controle die u optioneel kunt toevoegen aan uw roltoewijzing om geavanceerder toegangscontrole te bieden.

U kunt bijvoorbeeld een voorwaarde toevoegen waarvoor een object een specifieke tag moet hebben voor de gebruiker om het object te lezen.

Normaal gesproken bouwt u voorwaarden met behulp van een editor voor visuele voorwaarden, maar hier ziet een voorbeeldvoorwaarde eruit in code:

((!(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'} AND NOT SubOperationMatches{'Blob.List'})) OR (@resource[Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags:Project<$key_case_sensitive$>] StringEqualsIgnoreCase 'Cascade'))

Met de voorgaande voorwaarde kunnen gebruikers blobs lezen met een blob-indextagsleutel van Project en een waarde van Trapsgewijs.

Zie Wat is op kenmerken gebaseerd toegangsbeheer van Azure (Azure ABAC) voor meer informatie over voorwaarden?

Volgende stappen