Dela via


Självstudie: Bevilja en grupp åtkomst till Azure-resurser genom att använda Azure PowerShell

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

I den här handledningen kommer du lära dig att:

  • Bevilja åtkomst för en grupp i olika omfång
  • Liståtkomst
  • Ta bort åtkomst

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

Anmärkning

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 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 är de två rolltilldelningar som du kommer att utföra i den här handledningen:

Säkerhetsprincip Rolldefinition Definitionsområde
Grupp
(RBAC-handledningsgrupp)
Läsare Prenumeration
Grupp
(RBAC-handledningsgrupp)
Bidragsgivare Resursgrupp
(rbac-tutorial-resource-group)

rolltilldelningar för en grupp

Skapa en grupp

För att tilldela en roll behöver du en användare, grupp eller tjänstens huvudnamn. Om du inte redan har en grupp kan du skapa 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 aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb NotSet                   {}
    

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

Skapa en resursgrupp

Du använder en resursgrupp för att visa hur du tilldelar en roll i ett resursgruppsomfå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 den till en variabel.

    $location = "westus"
    
  3. Skapa en ny resursgrupp med kommandot 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
    

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äkerhetskomponent, 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 aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb NotSet                   {}
    
  2. Spara gruppobjektets ID i en variabel.

    $groupId = "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
    
  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 : aaaabbbb-0000-cccc-1111-dddd2222eeee
    State    : Enabled
    
  4. Spara prenumerationsomfånget i en variabel.

    $subScope = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
    
  5. Tilldela rollen Läsare till gruppen i prenumerationsomfånget.

    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. Tilldela rollen deltagare till gruppen på resursgruppens nivå.

    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
    

Liståtkomst

  1. Om du vill verifiera åtkomsten för prenumerationen använder du kommandot Get-AzRoleAssignment för att visa rolltilldelningarna.

    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
    

    I utdata kan du se att rollen Läsare har tilldelats till RBAC-självstudiegruppen i prenumerationsomfånget.

  2. Om du vill verifiera åtkomsten för resursgruppen använder du kommandot Get-AzRoleAssignment för att visa rolltilldelningarna.

    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
    

    I utdata kan du se att både rollerna Deltagare och Läsare har tilldelats till RBAC-självstudiegruppen. Rollen Deltagare gäller på nivån rbac-tutorial-resource-group och rollen Läsare ärvs på prenumerationsnivån.

(Valfritt) Visa en lista över åtkomst med hjälp av Azure-portalen

  1. Om du vill se hur rolltilldelningarna ser ut i Azure-portalen visar du bladet åtkomstkontroll (IAM) för prenumerationen.

    Rolltilldelningar för en grupp i prenumerationsomfånget

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

    rolltilldelningar för en grupp i resursgruppsomfånget

Ta bort åtkomst

Om du vill ta bort åtkomst för användare, grupper och program använder du Remove-AzRoleAssignment för att ta bort en rolltilldelning.

  1. Använd följande kommando för att ta bort rolltilldelningen Deltagare för gruppen i resursgruppens omfå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 för gruppen i prenumerationsomfånget.

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

Rensa resurser

Ta bort resursgruppen och gruppen för att rensa resurserna som skapats av den här självstudien.

  1. Ta bort resursgruppen med 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 även ta bort gruppen i portalen.

Nästa steg