Zelfstudie: Een groep toegang verlenen tot Azure-resources met behulp van Azure PowerShell
Met op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) kunt u de toegang tot Azure-resources beheren. In deze zelfstudie geeft u een groep toestemming om alles in een abonnement te bekijken en om alles in een resourcegroep te beheren met Azure PowerShell.
In deze zelfstudie leert u het volgende:
- Een groep op verschillende niveaus toegang geven
- Toegang opvragen
- Toegang intrekken
Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
Notitie
Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.
Vereisten
Voor het voltooien van deze zelfstudie hebt u het volgende nodig:
- Machtigingen voor het maken van groepen in Microsoft Entra-id (of een bestaande groep hebben)
- Azure Cloud Shell
- Microsoft Graph PowerShell SDK
Roltoewijzingen
In Azure RBAC verleent u toegang door een roltoewijzing te maken. Een roltoewijzing bestaat uit drie elementen: beveiligings-principal, roldefinitie en bereik (ook wel scope of niveau genoemd). Dit zijn de twee roltoewijzingen die u gaat uitvoeren in deze zelfstudie:
Beveiligingsprincipal | Roldefinitie | Bereik |
---|---|---|
Groep (RBAC Tutorial Group) |
Lezer | Abonnement |
Groep (RBAC Tutorial Group) |
Inzender | Resourcegroep (rbac-tutorial-resource-group) |
Een groep maken
Als u een rol wilt toewijzen, hebt u een gebruiker, groep of service-principal nodig. Als u nog geen groep hebt, kunt u er een maken.
Maak in Azure Cloud Shell een nieuwe groep met behulp van de opdracht New-MgGroup .
New-MgGroup -DisplayName "RBAC Tutorial Group" -MailEnabled:$false ` -SecurityEnabled:$true -MailNickName "NotSet"
DisplayName Id MailNickname Description GroupTypes ----------- -- ------------ ----------- ---------- RBAC Tutorial Group aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb NotSet {}
Als u geen machtigingen hebt om groepen te maken, kunt u de zelfstudie proberen: een gebruiker toegang verlenen tot Azure-resources met behulp van Azure PowerShell .
Een brongroep maken
U gaat een resourcegroep maken om te laten zien hoe u een rol kunt toewijzen op het niveau van een resourcegroep.
Vraag een lijst met regiolocaties op met behulp van de opdracht Get-AzLocation.
Get-AzLocation | select Location
Selecteer een locatie bij u in de buurt en wijs deze toe aan een variabele.
$location = "westus"
Maak een nieuwe resourcegroep met de opdracht New-AzResourceGroup.
New-AzResourceGroup -Name "rbac-tutorial-resource-group" -Location $location
ResourceGroupName : rbac-tutorial-resource-group Location : westus ProvisioningState : Succeeded Tags : ResourceId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rbac-tutorial-resource-group
Toegang verlenen
U verleent toegang aan een groep door met de opdracht New-AzRoleAssignment een rol toe te wijzen. U moet hierbij de beveiligingsprincipal, de roldefinitie en het bereik opgeven.
Haal de object-id van de groep op met behulp van de opdracht Get-MgGroup .
Get-MgGroup -Filter "DisplayName eq 'RBAC Tutorial Group'"
DisplayName Id MailNickname Description GroupTypes ----------- -- ------------ ----------- ---------- RBAC Tutorial Group aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb NotSet {}
Sla de object-id op in een variabele.
$groupId = "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
Vraag de id van uw abonnement op met de opdracht Get-AzSubscription.
Get-AzSubscription
Name : Pay-As-You-Go Id : 00000000-0000-0000-0000-000000000000 TenantId : aaaabbbb-0000-cccc-1111-dddd2222eeee State : Enabled
Sla het abonnementsbereik op in een variabele.
$subScope = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
Wijs de rol Lezer toe aan de groep op abonnementsniveau.
New-AzRoleAssignment -ObjectId $groupId ` -RoleDefinitionName "Reader" ` -Scope $subScope
RoleAssignmentId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000 Scope : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e DisplayName : RBAC Tutorial Group SignInName : RoleDefinitionName : Reader RoleDefinitionId : acdd72a7-3385-48ef-bd42-f606fba81ae7 ObjectId : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb ObjectType : Group CanDelegate : False
Wijs de rol Inzender toe aan de groep op het niveau van de resourcegroep.
New-AzRoleAssignment -ObjectId $groupId ` -RoleDefinitionName "Contributor" ` -ResourceGroupName "rbac-tutorial-resource-group"
RoleAssignmentId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rbac-tutorial-resource-group/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000 Scope : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rbac-tutorial-resource-group DisplayName : RBAC Tutorial Group SignInName : RoleDefinitionName : Contributor RoleDefinitionId : b24988ac-6180-42a0-ab88-20f7382dd24c ObjectId : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb ObjectType : Group CanDelegate : False
Toegang opvragen
Om de toegang voor het abonnement te controleren, gebruikt u de opdracht Get-AzRoleAssignment om een lijst van de roltoewijzingen weer te geven.
Get-AzRoleAssignment -ObjectId $groupId -Scope $subScope
RoleAssignmentId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Authorization/roleAssignments/ffffffff-eeee-dddd-cccc-bbbbbbbbbbb0 Scope : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e DisplayName : RBAC Tutorial Group SignInName : RoleDefinitionName : Reader RoleDefinitionId : acdd72a7-3385-48ef-bd42-f606fba81ae7 ObjectId : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb ObjectType : Group CanDelegate : False
In de uitvoer ziet u dat de rol Lezer (Reader) op abonnementsniveau is toegewezen aan RBAC Tutorial Group.
Om de toegang voor de resourcegroep te controleren, gebruikt u de opdracht Get-AzRoleAssignment om een lijst van de roltoewijzingen weer te geven.
Get-AzRoleAssignment -ObjectId $groupId -ResourceGroupName "rbac-tutorial-resource-group"
RoleAssignmentId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rbac-tutorial-resource-group/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000 Scope : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rbac-tutorial-resource-group DisplayName : RBAC Tutorial Group SignInName : RoleDefinitionName : Contributor RoleDefinitionId : b24988ac-6180-42a0-ab88-20f7382dd24c ObjectId : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb ObjectType : Group CanDelegate : False RoleAssignmentId : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Authorization/roleAssignments/ffffffff-eeee-dddd-cccc-bbbbbbbbbbb0 Scope : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e DisplayName : RBAC Tutorial Group SignInName : RoleDefinitionName : Reader RoleDefinitionId : acdd72a7-3385-48ef-bd42-f606fba81ae7 ObjectId : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb ObjectType : Group CanDelegate : False
In de uitvoer ziet u dat zowel de rol Inzender (Contributor) als Lezer (Reader) is toegewezen aan RBAC Tutorial Group. De rol Inzender is toegewezen aan de resourcegroep rbac-tutorial-resource-group en de rol Lezer wordt overgenomen op abonnementsniveau.
(Optioneel) Toegang opvragen via Azure Portal
Als u de roltoewijzingen wilt bekijken in Azure Portal, gaat u naar de blade Toegangsbeheer (IAM) voor het abonnement.
Open de blade Toegangsbeheer (IAM) voor de resourcegroep.
Toegang intrekken
U kunt de toegang voor gebruikers, groepen en toepassingen intrekken door met de opdracht Remove-AzRoleAssignment een roltoewijzing te verwijderen.
Gebruik de volgende opdracht om op het niveau van de resourcegroep de toewijzing van de rol Inzender te verwijderen voor de groep.
Remove-AzRoleAssignment -ObjectId $groupId ` -RoleDefinitionName "Contributor" ` -ResourceGroupName "rbac-tutorial-resource-group"
Gebruik de volgende opdracht om op abonnementsniveau de toewijzing van de rol Lezer te verwijderen voor de groep.
Remove-AzRoleAssignment -ObjectId $groupId ` -RoleDefinitionName "Reader" ` -Scope $subScope
Resources opschonen
Als u de in deze zelfstudie gemaakte resources wilt opschonen, verwijdert u de resourcegroep en de groep.
Verwijder de resourcegroep met de opdracht Remove-AzResourceGroup.
Remove-AzResourceGroup -Name "rbac-tutorial-resource-group"
Confirm Are you sure you want to remove resource group 'rbac-tutorial-resource-group' [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):
Wanneer u wordt gevraagd om te bevestigen, typt u Y. Het duurt enkele seconden om te verwijderen.
Verwijder de groep met de opdracht Remove-MgGroup .
Remove-MgGroup -GroupID $groupId
Als u een foutbericht ziet wanneer u de groep probeert te verwijderen, kunt u de groep ook in Azure Portal verwijderen.