Kurz: Udělení přístupu ke skupinám k prostředkům Azure pomocí Azure PowerShellu

Řízení přístupu na základě role Azure (chyba RBAC) je způsob správy přístupu k prostředkům Azure. V tomto kurzu pomocí Azure PowerShellu udělíte skupině přístup k zobrazení všeho v předplatném a správě všeho ve skupině prostředků.

V tomto kurzu se naučíte:

  • Udělení přístupu pro skupinu v různých oborech
  • Výpis přístupu
  • Odebrání přístupu

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Poznámka:

Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Požadavky

Pro absolvování tohoto kurzu potřebujete:

Přiřazení rolí

V Azure RBAC pro udělení přístupu vytvoříte přiřazení role. Přiřazení role se skládá ze tří prvků: objekt zabezpečení, definice role a obor. Tady jsou dvě přiřazení rolí, která v tomto kurzu provedete:

Objekt zabezpečení Definice role Obor
Seskupit
(RBAC Tutorial Group)
Čtenář Předplatné
Seskupit
(RBAC Tutorial Group)
Přispěvatel Skupina prostředků
(rbac-tutorial-resource-group)

Role assignments for a group

Vytvoření skupiny

Pro přiřazení role potřebujete uživatele, skupinu nebo instanční objekt. Pokud skupinu ještě nemáte, můžete ji vytvořit.

  • V Azure Cloud Shellu vytvořte novou skupinu pomocí příkazu 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                   {}
    

Pokud nemáte oprávnění k vytváření skupin, můžete vyzkoušet kurz: Udělení přístupu uživatelů k prostředkům Azure pomocí Azure PowerShellu .

Vytvoření skupiny zdrojů

Skupinu prostředků použijeme k ukázce, jak přiřadit roli v oboru skupiny prostředků.

  1. Pomocí příkazu Get-AzLocation získejte seznam umístění oblastí.

    Get-AzLocation | select Location
    
  2. Vyberte umístění blízko vás a přiřaďte ho do proměnné.

    $location = "westus"
    
  3. Vytvořte novou skupinu prostředků pomocí příkazu 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
    

Udělení přístupu

Pokud chcete udělit přístup ke skupině, pomocí příkazu New-AzRoleAssignment přiřaďte roli. Musíte zadat objekt zabezpečení, definici role a obor.

  1. Pomocí příkazu Get-MgGroup získejte ID objektu skupiny.

    Get-MgGroup -Filter "DisplayName eq 'RBAC Tutorial Group'"
    
    DisplayName         Id                                   MailNickname Description GroupTypes
    -----------         --                                   ------------ ----------- ----------
    RBAC Tutorial Group 11111111-1111-1111-1111-111111111111 NotSet                   {}
    
  2. Uložte ID objektu skupiny do proměnné.

    $groupId = "11111111-1111-1111-1111-111111111111"
    
  3. Pomocí příkazu Get-AzSubscription získejte ID vašeho předplatného.

    Get-AzSubscription
    
    Name     : Pay-As-You-Go
    Id       : 00000000-0000-0000-0000-000000000000
    TenantId : 22222222-2222-2222-2222-222222222222
    State    : Enabled
    
  4. Uložte obor předplatného do proměnné.

    $subScope = "/subscriptions/00000000-0000-0000-0000-000000000000"
    
  5. Přiřaďte skupině roli Čtenář v oboru předplatného.

    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. Přiřaďte skupině roli Přispěvatel v oboru skupiny prostředků.

    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
    

Výpis přístupu

  1. Pokud chcete ověřit přístup k předplatnému, pomocí příkazu Get-AzRoleAssignment zobrazte seznam přiřazení rolí.

    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
    

    Ve výstupu vidíte, že se skupině RBAC Tutorial Group přiřadila role Čtenář v oboru předplatného.

  2. Pokud chcete ověřit přístup pro skupinu prostředků, pomocí příkazu Get-AzRoleAssignment zobrazte seznam přiřazení rolí.

    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
    

    Ve výstupu vidíte, že se skupině RBAC Tutorial Group přiřadily role Přispěvatel i Čtenář. Role Přispěvatel je v oboru skupiny prostředků rbac-tutorial-resource-group a role Čtenář se dědí v oboru předplatného.

(Volitelné) Výpis přístupu pomocí webu Azure Portal

  1. Pokud se chcete podívat, jak přiřazení rolí vypadají na webu Azure Portal, zobrazte okno Řízení přístupu (IAM) pro dané předplatné.

    Role assignments for a group at subscription scope

  2. Zobrazte okno Řízení přístupu (IAM) pro danou skupinu prostředků.

    Role assignments for a group at resource group scope

Odebrání přístupu

Pokud chcete odebrat přístup pro uživatele, skupiny a aplikace, odeberte přiřazení role pomocí remove-AzRoleAssignment .

  1. Pomocí následujícího příkazu odeberte skupině přiřazení role Přispěvatel v oboru skupiny prostředků.

    Remove-AzRoleAssignment -ObjectId $groupId `
      -RoleDefinitionName "Contributor" `
      -ResourceGroupName "rbac-tutorial-resource-group"
    
  2. Pomocí následujícího příkazu odeberte skupině přiřazení role Čtenář v oboru předplatného.

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

Vyčištění prostředků

Pokud chcete vyčistit prostředky vytvořené v tomto kurzu, odstraňte skupinu prostředků a skupinu.

  1. Odstraňte skupinu prostředků pomocí příkazu 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. Po zobrazení výzvy k potvrzení zadejte Y. Odstranění bude trvat několik sekund.

  3. Odstraňte skupinu pomocí příkazu Remove-MgGroup .

    Remove-MgGroup -GroupID $groupId
    

    Pokud se při pokusu o odstranění skupiny zobrazí chyba, můžete skupinu odstranit také na portálu.

Další kroky