Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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:
- Berechtigungen zum Erstellen von Benutzern in Microsoft Entra ID (oder für einen vorhandenen Benutzer)
- Azure Cloud Shell
- Microsoft Graph PowerShell SDK
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) |
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.
Erstellen Sie in Azure Cloud Shell ein Kennwort, das Ihren Anforderungen an die Kennwortkomplexität entspricht.
$PasswordProfile = @{ Password = "<Password>" }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.
Dient zum Abrufen einer Liste von Regionenstandorten mithilfe des Befehls "Get-AzLocation ".
Get-AzLocation | select LocationWählen Sie einen Ort in ihrer Nähe aus, und weisen Sie ihn einer Variablen zu.
$location = "westus"Erstellen Sie eine neue Ressourcengruppe mit dem Befehl "New-AzResourceGroup ".
New-AzResourceGroup -Name "rbac-tutorial-resource-group" -Location $locationResourceGroupName : 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.
Rufen Sie die ID Ihres Abonnements mit dem Befehl "Get-AzSubscription " ab.
Get-AzSubscriptionName : Pay-As-You-Go Id : 00000000-0000-0000-0000-000000000000 TenantId : aaaabbbb-0000-cccc-1111-dddd2222eeee State : EnabledSpeichern Sie den Abonnementbereich in einer Variablen.
$subScope = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"Weisen Sie dem Benutzer die Rolle Leser im Rahmen des Abonnements zu.
New-AzRoleAssignment -SignInName rbacuser@example.com ` -RoleDefinitionName "Reader" ` -Scope $subScopeRoleAssignmentId : /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 : FalseWeisen 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
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 $subScopeRoleAssignmentId : /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 : FalseIn der Ausgabe sehen Sie, dass die Rolle „Leser“ dem Benutzer des RBAC-Tutorials im Abonnementbereich zugewiesen ist.
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 : FalseIn 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
Wenn Sie die Darstellung der Rollenzuweisungen im Azure-Portal anzeigen möchten, sehen Sie sich das Blatt Zugriffssteuerung (IAM) für das Abonnement an.
Sehen Sie sich das Blatt Zugriffssteuerung (IAM) für die Ressourcengruppe an.
Zugriff entfernen
Um den Zugriff für Benutzer, Gruppen und Anwendungen zu entfernen, verwenden Sie Remove-AzRoleAssignment , um eine Rollenzuweisung zu entfernen.
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"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.
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"):Wenn Sie zur Bestätigung aufgefordert werden, geben Sie "Y" ein. Das Löschen dauert einige Sekunden.
Löschen Sie den Benutzer mithilfe des Befehls "Remove-MgUser ".
$User = Get-MgUser -Filter "DisplayName eq 'RBAC Tutorial User'" Remove-MgUser -UserId $User.Id