Delen via


Tutorial: Grant a group access to Azure resources using Azure PowerShell

Met op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) kunt u de toegang tot Azure-resources beheren. In this tutorial, you grant a group access to view everything in a subscription and manage everything in a resource group using Azure PowerShell.

In deze zelfstudie leert u het volgende:

  • Grant access for a group at different scopes
  • Toegang tot lijst
  • Toegang verwijderen

Als u nog geen abonnement op Azure hebt, maak dan een gratis account aan voordat u begint.

Opmerking

U wordt aangeraden 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.

Vereiste voorwaarden

Voor het voltooien van deze zelfstudie hebt u het volgende nodig:

Roltoewijzingen

Als u in Azure RBAC toegang wilt verlenen, maakt u een roltoewijzing. Een roltoewijzing bestaat uit drie elementen: beveiligingsprincipal, roldefinitie en reikwijdte. Dit zijn de twee roltoewijzingen die je in deze handleiding gaat uitvoeren.

Beveiligingsprincipe Roldefinitie Omvang
Groep
(RBAC Tutorial Group)
Reader Abonnement
Groep
(RBAC Tutorial Group)
Inzender Resourcegroep
(rbac-tutorial-resource-group)

Role assignments for a group

Een groep maken

Als u een rol wilt toewijzen, hebt u een gebruiker, groep of service-principal nodig. If you don't already have a group, you can create one.

  • In Azure Cloud Shell, create a new group using the New-MgGroup command.

    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                   {}
    

If you don't have permissions to create groups, you can try the Tutorial: Grant a user access to Azure resources using Azure PowerShell instead.

Een brongroep maken

U gebruikt een resourcegroep om te laten zien hoe u een rol toewijst op het niveau van een resourcegroep.

  1. Haal een lijst met regiolocaties op met behulp van de opdracht Get-AzLocation .

    Get-AzLocation | select Location
    
  2. Selecteer een locatie bij u in de buurt en wijs deze toe aan een variabele.

    $location = "westus"
    
  3. Maak een nieuwe resourcegroep met behulp van 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

To grant access for the group, you use the New-AzRoleAssignment command to assign a role. U moet de beveiligingsprincipaal, roldefinitie en het bereik opgeven.

  1. Get the object ID of the group using the Get-MgGroup command.

    Get-MgGroup -Filter "DisplayName eq 'RBAC Tutorial Group'"
    
    DisplayName         Id                                   MailNickname Description GroupTypes
    -----------         --                                   ------------ ----------- ----------
    RBAC Tutorial Group aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb NotSet                   {}
    
  2. Save the group object ID in a variable.

    $groupId = "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
    
  3. 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
    
  4. Sla het abonnementsbereik op in een variabele.

    $subScope = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
    
  5. Assign the Reader role to the group at the subscription scope.

    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
    
  6. Assign the Contributor role to the group at the resource group scope.

    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 tot lijst

  1. Als u de toegang voor het abonnement wilt controleren, gebruikt u de opdracht Get-AzRoleAssignment om 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 the output, you can see that the Reader role has been assigned to the RBAC Tutorial Group at the subscription scope.

  2. Als u de toegang voor de resourcegroep wilt controleren, gebruikt u de opdracht Get-AzRoleAssignment om 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 the output, you can see that both the Contributor and Reader roles have been assigned to the RBAC Tutorial Group. The Contributor role is at the rbac-tutorial-resource-group scope and the Reader role is inherited at the subscription scope.

(Optioneel) Toegang weergeven met behulp van Azure Portal

  1. Als u wilt zien hoe de roltoewijzingen eruitzien in de Azure-portal, bekijkt u de Toegangsbeheer (IAM) blade voor het abonnement.

    Role assignments for a group at subscription scope

  2. View the Access control (IAM) blade for the resource group.

    Role assignments for a group at resource group scope

Toegang verwijderen

Als u de toegang voor gebruikers, groepen en toepassingen wilt verwijderen, gebruikt u Remove-AzRoleAssignment om een roltoewijzing te verwijderen.

  1. Use the following command to remove the Contributor role assignment for the group at the resource group scope.

    Remove-AzRoleAssignment -ObjectId $groupId `
      -RoleDefinitionName "Contributor" `
      -ResourceGroupName "rbac-tutorial-resource-group"
    
  2. Use the following command to remove the Reader role assignment for the group at the subscription scope.

    Remove-AzRoleAssignment -ObjectId $groupId `
      -RoleDefinitionName "Reader" `
      -Scope $subScope
    

De hulpbronnen opschonen

To clean up the resources created by this tutorial, delete the resource group and the group.

  1. Verwijder de resourcegroep met behulp van 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"):
    
  2. Wanneer u wordt gevraagd om te bevestigen, typt u Y. Het duurt enkele seconden om te verwijderen.

  3. Delete the group using the Remove-MgGroup command.

    Remove-MgGroup -GroupID $groupId
    

    If you receive an error when you try to delete the group, you can also delete the group in the portal.

Volgende stappen