Freigeben über


Lernprogramm: Gewähren eines Benutzerzugriffs auf Azure-Ressourcen mithilfe von Azure PowerShell

Die rollenbasierte Zugriffssteuerung (Azure RBAC) ist die Art und Weise, wie Sie den Zugriff auf Azure-Ressourcen verwalten. In diesem Lernprogramm gewähren Sie einem Benutzer Zugriff, um alles in einem Abonnement anzuzeigen und alles in einer Ressourcengruppe mithilfe von Azure PowerShell zu verwalten.

In diesem Tutorial erfahren Sie, wie:

  • Gewähren des Zugriffs für einen Benutzer in unterschiedlichen Bereichen
  • Listenzugriff
  • Zugriff entfernen

Wenn Sie noch kein Azure-Abonnement haben, erstellen Sie ein kostenloses Konto, bevor Sie beginnen.

Hinweis

Es wird empfohlen, das Azure Az PowerShell-Modul für die Interaktion mit Azure zu verwenden. Informationen zu den ersten Schritten finden Sie unter Installieren von Azure PowerShell. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.

Voraussetzungen

Um dieses Lernprogramm abzuschließen, benötigen Sie Folgendes:

Rollenzuweisungen

Wenn Sie in Azure RBAC Zugriff gewähren möchten, erstellen Sie eine Rollenzuweisung. Eine Rollenzuweisung besteht aus drei Elementen: Sicherheitsprinzipal, Rollendefinition und Bereich. Hier sind die beiden Rollenzuweisungen, die Sie in diesem Tutorial vornehmen:

Sicherheitsprinzipal Rollendefinition Umfang
Benutzer
(RBAC-Lernprogrammbenutzer)
Reader Subscription
Benutzer
(RBAC-Lernprogrammbenutzer)
Contributor Ressourcengruppe
(rbac-tutorial-resource-group)

Rollenzuweisungen für einen Benutzer

Erstellen eines Benutzers

Um eine Rolle zuzuweisen, benötigen Sie einen Benutzer, eine Gruppe oder einen Dienstprinzipal. Wenn Sie noch nicht über einen Benutzer verfügen, können Sie einen erstellen.

  1. Erstellen Sie in Azure Cloud Shell ein Kennwort, das Ihren Anforderungen an die Kennwortkomplexität entspricht.

    $PasswordProfile = @{ Password = "<Password>" }
    
  2. Erstellen Sie einen neuen Benutzer für Ihre Domäne mithilfe des Befehls "New-MgUser ".

    New-MgUser -DisplayName "RBAC Tutorial User" -PasswordProfile $PasswordProfile `
       -UserPrincipalName "rbacuser@example.com" -AccountEnabled:$true -MailNickName "rbacuser"
    
    DisplayName        Id                                   Mail UserPrincipalName
    -----------        --                                   ---- -----------------
    RBAC Tutorial User aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb      rbacuser@example.com
    

Erstellen einer Ressourcengruppe

Sie verwenden eine Ressourcengruppe, um zu zeigen, wie eine Rolle in einem Ressourcengruppenbereich zugewiesen wird.

  1. Dient zum Abrufen einer Liste von Regionenstandorten mithilfe des Befehls "Get-AzLocation ".

    Get-AzLocation | select Location
    
  2. Wählen Sie einen Ort in ihrer Nähe aus, und weisen Sie ihn einer Variablen zu.

    $location = "westus"
    
  3. Erstellen Sie eine neue Ressourcengruppe mit dem Befehl "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
    

Gewähren von Zugriff

Um dem Benutzer Zugriff zu gewähren, verwenden Sie den Befehl "New-AzRoleAssignment ", um eine Rolle zuzuweisen. Sie müssen den Sicherheitsprinzipal, die Rollendefinition und den Bereich angeben.

  1. Rufen Sie die ID Ihres Abonnements mit dem Befehl "Get-AzSubscription " ab.

    Get-AzSubscription
    
    Name     : Pay-As-You-Go
    Id       : 00000000-0000-0000-0000-000000000000
    TenantId : aaaabbbb-0000-cccc-1111-dddd2222eeee
    State    : Enabled
    
  2. Speichern Sie den Abonnementbereich in einer Variablen.

    $subScope = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
    
  3. Weisen Sie dem Benutzer die Rolle Leser im Rahmen des Abonnements zu.

    New-AzRoleAssignment -SignInName rbacuser@example.com `
      -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 User
    SignInName         : rbacuser@example.com
    RoleDefinitionName : Reader
    RoleDefinitionId   : acdd72a7-3385-48ef-bd42-f606fba81ae7
    ObjectId           : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType         : User
    CanDelegate        : False
    
  4. Weisen Sie dem Benutzer die Rolle "Mitwirkender " im Ressourcengruppenbereich zu.

    New-AzRoleAssignment -SignInName rbacuser@example.com `
      -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 User
    SignInName         : rbacuser@example.com
    RoleDefinitionName : Contributor
    RoleDefinitionId   : b24988ac-6180-42a0-ab88-20f7382dd24c
    ObjectId           : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType         : User
    CanDelegate        : False
    

Listenzugriff

  1. Um den Zugriff für das Abonnement zu überprüfen, verwenden Sie den Befehl "Get-AzRoleAssignment ", um die Rollenzuweisungen auflisten zu können.

    Get-AzRoleAssignment -SignInName rbacuser@example.com -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 User
    SignInName         : rbacuser@example.com
    RoleDefinitionName : Reader
    RoleDefinitionId   : acdd72a7-3385-48ef-bd42-f606fba81ae7
    ObjectId           : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType         : User
    CanDelegate        : False
    

    In der Ausgabe sehen Sie, dass die Rolle „Leser“ dem Benutzer des RBAC-Tutorials im Abonnementbereich zugewiesen ist.

  2. Um den Zugriff für die Ressourcengruppe zu überprüfen, verwenden Sie den Befehl "Get-AzRoleAssignment ", um die Rollenzuweisungen auflisten zu können.

    Get-AzRoleAssignment -SignInName rbacuser@example.com -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 User
    SignInName         : rbacuser@example.com
    RoleDefinitionName : Contributor
    RoleDefinitionId   : b24988ac-6180-42a0-ab88-20f7382dd24c
    ObjectId           : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType         : User
    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 User
    SignInName         : rbacuser@example.com
    RoleDefinitionName : Reader
    RoleDefinitionId   : acdd72a7-3385-48ef-bd42-f606fba81ae7
    ObjectId           : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType         : User
    CanDelegate        : False
    

    In der Ausgabe können Sie sehen, dass sowohl die Rollen "Mitwirkender" als auch "Leser" dem RBAC-Lernprogrammbenutzer zugewiesen wurden. Die Rolle „Mitwirkender“ befindet sich im Bereich „rbac-tutorial-resource-group“, und die Rolle „Leser“ wird im Abonnementbereich geerbt.

(Optional) Auflisten des Zugriffs über das Azure-Portal

  1. Wenn Sie die Darstellung der Rollenzuweisungen im Azure-Portal anzeigen möchten, sehen Sie sich das Blatt Zugriffssteuerung (IAM) für das Abonnement an.

    Rollenzuweisungen für einen Benutzer im Abonnementbereich

  2. Sehen Sie sich das Blatt Zugriffssteuerung (IAM) für die Ressourcengruppe an.

    Rollenzuweisungen für einen Benutzer im Ressourcengruppenbereich

Zugriff entfernen

Um den Zugriff für Benutzer, Gruppen und Anwendungen zu entfernen, verwenden Sie Remove-AzRoleAssignment , um eine Rollenzuweisung zu entfernen.

  1. Verwenden Sie den folgenden Befehl, um die Rollenzuweisung "Mitwirkender" für den Benutzer im Ressourcengruppenbereich zu entfernen.

    Remove-AzRoleAssignment -SignInName rbacuser@example.com `
      -RoleDefinitionName "Contributor" `
      -ResourceGroupName "rbac-tutorial-resource-group"
    
  2. Verwenden Sie den folgenden Befehl, um die Rollenzuweisung "Reader" für den Benutzer im Abonnementbereich zu entfernen.

    Remove-AzRoleAssignment -SignInName rbacuser@example.com `
      -RoleDefinitionName "Reader" `
      -Scope $subScope
    

Bereinigen von Ressourcen

Wenn Sie die von diesem Lernprogramm erstellten Ressourcen bereinigen möchten, löschen Sie die Ressourcengruppe und den Benutzer.

  1. Löschen Sie die Ressourcengruppe mithilfe des Befehls "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. Wenn Sie zur Bestätigung aufgefordert werden, geben Sie "Y" ein. Das Löschen dauert einige Sekunden.

  3. Löschen Sie den Benutzer mithilfe des Befehls "Remove-MgUser ".

    $User = Get-MgUser -Filter "DisplayName eq 'RBAC Tutorial User'"
    Remove-MgUser -UserId $User.Id
    

Nächste Schritte