Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Azure-rollbaserad åtkomstkontroll (Azure RBAC) är sättet som du hantera åtkomst till Azure-resurser. I den här självstudien ger du en användare å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 tutorialen lär du dig följande:
- Bevilja åtkomst för en användare 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:
- Behörigheter för att skapa användare i Microsoft Entra-ID (eller ha en befintlig användare)
- Azure Cloud Shell
- Microsoft Graph PowerShell SDK
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 | 
|---|---|---|
| Användare (RBAC-användare för självstudie) | Läsare | Prenumeration | 
| Användare (RBAC-användare för självstudie) | Bidragsgivare | Resursgrupp (rbac-handledning-resursgrupp) | 
               
              
            
Skapa en användare
För att tilldela en roll behöver du en användare, grupp eller tjänstens huvudnamn. Om du inte redan har en användare kan du skapa en.
- I Azure Cloud Shell skapar du ett lösenord som uppfyller dina krav på lösenordskomplexitet. - $PasswordProfile = @{ Password = "<Password>" }
- Skapa en ny användare för din domän med kommandot 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
Skapa en resursgrupp
Du använder en resursgrupp för att visa hur du tilldelar en roll i ett resursgruppsomfång.
- Hämta en lista över regionplatser med hjälp av kommandot Get-AzLocation. - Get-AzLocation | select Location
- Välj en plats nära dig och tilldela den till en variabel. - $location = "westus"
- 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 användaren använder du kommandot New-AzRoleAssignment för att tilldela en roll. Du måste ange säkerhetskomponent, rolldefinition och omfång.
- 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
- Spara prenumerationsomfånget i en variabel. - $subScope = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
- Tilldela rollen Läsare till användaren i prenumerationsomfånget. - 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
- Tilldela rollen Deltagare till användaren på resursgruppens nivå. - 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
Liståtkomst
- Om du vill verifiera åtkomsten för prenumerationen använder du kommandot Get-AzRoleAssignment för att visa rolltilldelningarna. - 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- I utdata kan du se att rollen Läsare har tilldelats till RBAC-självstudieanvändaren i prenumerationsomfånget. 
- Om du vill verifiera åtkomsten för resursgruppen använder du kommandot Get-AzRoleAssignment för att visa rolltilldelningarna. - 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- I utdata kan du se att både rollerna Deltagare och Läsare har tilldelats RBAC-handledningsanvändaren. 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
- Om du vill se hur rolltilldelningarna ser ut i Azure-portalen visar du bladet åtkomstkontroll (IAM) för prenumerationen.   
- Visa bladet åtkomstkontroll (IAM) för resursgruppen.   
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.
- Använd följande kommando för att ta bort användarens rolltilldelning som bidragsgivare inom resursgruppens omfång. - Remove-AzRoleAssignment -SignInName rbacuser@example.com ` -RoleDefinitionName "Contributor" ` -ResourceGroupName "rbac-tutorial-resource-group"
- Använd följande kommando för att ta bort rolltilldelningen Läsare för användaren i prenumerationsomfånget. - Remove-AzRoleAssignment -SignInName rbacuser@example.com ` -RoleDefinitionName "Reader" ` -Scope $subScope
Rensa resurser
Radera resursgruppen och användaren för att städa upp resurserna som skapats av den här guiden.
- 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"):
- När du uppmanas att bekräfta skriver du Y. Det tar några sekunder att ta bort. 
- Ta bort användaren med kommandot Remove-MgUser . - $User = Get-MgUser -Filter "DisplayName eq 'RBAC Tutorial User'" Remove-MgUser -UserId $User.Id