Självstudie: Bevilja en grupp åtkomst till Azure-resurser med Hjälp av Azure PowerShell

Azure-rollbaserad åtkomstkontroll (Azure RBAC) är sättet som du hantera åtkomst till Azure-resurser. I den här självstudien kommer du at ge en grupp åtkomst för att visa allt i en prenumeration och hantera allt innehåll i en resursgrupp med hjälp av Azure PowerShell.

I den här självstudien lär du dig att:

  • Beviljar åtkomst för en grupp med olika omfång
  • Lista för åtkomst
  • Ta bort åtkomst

Om du inte har någon Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.

Kommentar

Vi rekommenderar att du använder Azure Az PowerShell-modulen för att interagera med Azure. Se Installera Azure PowerShell för att komma igång. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.

Förutsättningar

För att kunna genomföra den här kursen behöver du följande:

Rolltilldelningar

I Azure RBAC skapar du en rolltilldelning för att bevilja åtkomst. En rolltilldelning består av tre delar: säkerhetsobjekt, rolldefinition och omfång. Här följer två rolltilldelningar som du utför i den här självstudiekursen:

Säkerhetsobjekt Rolldefinition Omfattning
Grupp
(RBAC-kursgrupp)
Läsare Prenumeration
Grupp
(RBAC-kursgrupp)
Deltagare Resursgrupp
(rbac-tutorial-resource-group)

Role assignments for a group

Skapa en grupp

Om du vill tilldela en roll behöver du en användare, grupp eller tjänstens huvudnamn. Om du inte redan har en grupp skapar du en.

  • I Azure Cloud Shell skapar du en ny grupp med kommandot New-MgGroup .

    New-MgGroup -DisplayName "RBAC Tutorial Group" -MailEnabled:$false `
        -SecurityEnabled:$true -MailNickName "NotSet"
    
    DisplayName         Id                                   MailNickname Description GroupTypes
    -----------         --                                   ------------ ----------- ----------
    RBAC Tutorial Group 11111111-1111-1111-1111-111111111111 NotSet                   {}
    

Om du inte har behörighet att skapa grupper kan du prova Självstudie: Bevilja en användare åtkomst till Azure-resurser med Azure PowerShell i stället.

Skapa en resursgrupp

Du kan använda en resursgrupp för att visa hur du tilldelar en roll med resursgruppomfång.

  1. Hämta en lista över regionplatser med hjälp av kommandot Get-AzLocation.

    Get-AzLocation | select Location
    
  2. Välj en plats nära dig och tilldela en variabel.

    $location = "westus"
    
  3. Skapa en ny resursgrupp med hjälp av kommandot New-AzResourceGroup.

    New-AzResourceGroup -Name "rbac-tutorial-resource-group" -Location $location
    
    ResourceGroupName : rbac-tutorial-resource-group
    Location          : westus
    ProvisioningState : Succeeded
    Tags              :
    ResourceId        : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rbac-tutorial-resource-group
    

Bevilja åtkomst

Om du vill bevilja åtkomst för gruppen använder du kommandot New-AzRoleAssignment för att tilldela en roll. Du måste ange säkerhetsobjekt, rolldefinition och omfång.

  1. Hämta objekt-ID:t för gruppen med kommandot Get-MgGroup .

    Get-MgGroup -Filter "DisplayName eq 'RBAC Tutorial Group'"
    
    DisplayName         Id                                   MailNickname Description GroupTypes
    -----------         --                                   ------------ ----------- ----------
    RBAC Tutorial Group 11111111-1111-1111-1111-111111111111 NotSet                   {}
    
  2. Spara gruppens objekt-ID i en variabel.

    $groupId = "11111111-1111-1111-1111-111111111111"
    
  3. Hämta ID för din prenumeration med hjälp av kommandot Get-AzSubscription.

    Get-AzSubscription
    
    Name     : Pay-As-You-Go
    Id       : 00000000-0000-0000-0000-000000000000
    TenantId : 22222222-2222-2222-2222-222222222222
    State    : Enabled
    
  4. Spara prenumerationsomfattningen i en variabel.

    $subScope = "/subscriptions/00000000-0000-0000-0000-000000000000"
    
  5. Tilldela rollen Läsare i gruppen i prenumerationsomfattningen.

    New-AzRoleAssignment -ObjectId $groupId `
      -RoleDefinitionName "Reader" `
      -Scope $subScope
    
    RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/44444444-4444-4444-4444-444444444444
    Scope              : /subscriptions/00000000-0000-0000-0000-000000000000
    DisplayName        : RBAC Tutorial Group
    SignInName         :
    RoleDefinitionName : Reader
    RoleDefinitionId   : acdd72a7-3385-48ef-bd42-f606fba81ae7
    ObjectId           : 11111111-1111-1111-1111-111111111111
    ObjectType         : Group
    CanDelegate        : False
    
  6. Tilldela rollen Deltagare i gruppen i resursgruppomfattningen.

    New-AzRoleAssignment -ObjectId $groupId `
      -RoleDefinitionName "Contributor" `
      -ResourceGroupName "rbac-tutorial-resource-group"
    
    RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rbac-tutorial-resource-group/providers/Microsoft.Authorization/roleAssignments/33333333-3333-3333-3333-333333333333
    Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rbac-tutorial-resource-group
    DisplayName        : RBAC Tutorial Group
    SignInName         :
    RoleDefinitionName : Contributor
    RoleDefinitionId   : b24988ac-6180-42a0-ab88-20f7382dd24c
    ObjectId           : 11111111-1111-1111-1111-111111111111
    ObjectType         : Group
    CanDelegate        : False
    

Lista för åtkomst

  1. För att bekräfta åtkomsten till prenumerationen använder du kommandot Get-AzRoleAssignment för att visa en lista över rolltilldelningarna.

    Get-AzRoleAssignment -ObjectId $groupId -Scope $subScope
    
    RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/22222222-2222-2222-2222-222222222222
    Scope              : /subscriptions/00000000-0000-0000-0000-000000000000
    DisplayName        : RBAC Tutorial Group
    SignInName         :
    RoleDefinitionName : Reader
    RoleDefinitionId   : acdd72a7-3385-48ef-bd42-f606fba81ae7
    ObjectId           : 11111111-1111-1111-1111-111111111111
    ObjectType         : Group
    CanDelegate        : False
    

    Du kan se att rollen Läsare har tilldelats till gruppen RBAC-kursgrupp med prenumerationsomfång.

  2. För att bekräfta åtkomsten till resursgruppen använder du kommandot Get-AzRoleAssignment för att visa en lista över rolltilldelningarna.

    Get-AzRoleAssignment -ObjectId $groupId -ResourceGroupName "rbac-tutorial-resource-group"
    
    RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rbac-tutorial-resource-group/providers/Microsoft.Authorization/roleAssignments/33333333-3333-3333-3333-333333333333
    Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rbac-tutorial-resource-group
    DisplayName        : RBAC Tutorial Group
    SignInName         :
    RoleDefinitionName : Contributor
    RoleDefinitionId   : b24988ac-6180-42a0-ab88-20f7382dd24c
    ObjectId           : 11111111-1111-1111-1111-111111111111
    ObjectType         : Group
    CanDelegate        : False
    
    RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/22222222-2222-2222-2222-222222222222
    Scope              : /subscriptions/00000000-0000-0000-0000-000000000000
    DisplayName        : RBAC Tutorial Group
    SignInName         :
    RoleDefinitionName : Reader
    RoleDefinitionId   : acdd72a7-3385-48ef-bd42-f606fba81ae7
    ObjectId           : 11111111-1111-1111-1111-111111111111
    ObjectType         : Group
    CanDelegate        : False
    

    Du kan se att rollerna Läsare och Deltagare har tilldelats till gruppen RBAC-kursgrupp. Deltagarrollen är definitionsområdet rbac-tutorial-resource-group och rollen Läsare ärvs i prenumerationomfånget.

(Valfritt) Visa åtkomst med hjälp av Azure Portal

  1. Om du vill se rolltilldelningen i Azure-portalen kan du visa åtkomstkontroll (IAM)-bladet för prenumerationen.

    Role assignments for a group at subscription scope

  2. Visa bladet Åtkomstkontroll (IAM) för resursgruppen.

    Role assignments for a group at resource group scope

Ta bort åtkomst

Ta bort åtkomst för användare, grupper och program med Remove-AzRoleAssignment för att ta bort en rolltilldelning.

  1. Använd följande kommando för att ta bort rolltilldelningen Deltagare från gruppens resursgruppomfång.

    Remove-AzRoleAssignment -ObjectId $groupId `
      -RoleDefinitionName "Contributor" `
      -ResourceGroupName "rbac-tutorial-resource-group"
    
  2. Använd följande kommando för att ta bort rolltilldelningen Läsare från gruppens prenumerationsomfång.

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

Rensa resurser

Om du vill rensa resurserna som har skapats med den här självstudien kan du ta bort resursgruppen och gruppen.

  1. Ta bort resursgruppen med hjälp av kommandot 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. När du uppmanas att bekräfta skriver du Y. Det tar några sekunder att ta bort.

  3. Ta bort gruppen med kommandot Remove-MgGroup .

    Remove-MgGroup -GroupID $groupId
    

    Om du får ett felmeddelande när du försöker ta bort gruppen kan du också ta bort gruppen i portalen.

Nästa steg