Beheer van Azure AD Rollen en Permissies met PowerShell

Beheren van Azure AD-rollen en -machtigingen met PowerShell. Heeft u hulp nodig bij het beheren en automatiseren van Azure AD-rollen en -machtigingen met Windows PowerShell? Dit artikel legt de typische scenario’s uit voor het automatiseren van Azure Role Based Access Control (RBAC) met PowerShell.

Om het fundament te leggen en zich voor te bereiden op het beheren van Azure-rollen en -machtigingen, beginnen we met een overzicht van Azure role-based access control (RBAC). Daarna leggen we de drie elementen van roltoewijzing uit.

Er is ook een sectie die de vereisten uitlegt voor het beheren van Azure AD-rollen en -machtigingen met Windows PowerShell.

De volgende secties zijn gewijd aan het uitleggen van de stappen voor het toewijzen van Azure AD-rollen met PowerShell. 

Tenslotte leggen we uit hoe u rollen die zijn toegewezen aan gebruikers en groepen kunt vermelden met PowerShell.

Wat is Azure Role-Based Access Control (RBAC)Azure role-based access control (RBAC) stelt beheerders in staat om fijnmazige toegangscontrole tot resources uit te voeren. Met andere woorden, Azure RBAC stelt beheerders in staat om te bepalen wie toegang heeft tot resources.

Azure Role Based Access Control (RBAC) stelt beheerders in staat om fijnmazige toegangscontrole tot resources uit te voeren. Met andere woorden, Azure RBAC stelt beheerders in staat om te bepalen wie toegang heeft tot resources.

Bovendien regelt RBAC het niveau van toegang tot resources in Azure.

De kern van RBAC bestaat uit roltoewijzingen. Azure heeft honderden ingebouwde rollen met vooraf gedefinieerde machtigingen die worden toegewezen aan gebruikers, groepen of service principals.

Het bestaan van ingebouwde rollen met vooraf gedefinieerde machtigingen maakt roltoewijzingen eenvoudig, aangezien beheerders geen machtigingen rechtstreeks aan objecten hoeven toe te kennen.

Er zijn echter gevallen waarin de ingebouwde rollen mogelijk niet geschikt zijn voor de behoeften van een organisatie. In deze situatie worden aangepaste rollen gemaakt.

Dit artikel behandelt de stappen voor het toewijzen van bestaande rollen en het maken en toewijzen van aangepaste Azure AD-rollen.

Elementen van Azure Roltoewijzing

Het toewijzen van roltoewijzingen omvat 3 elementen – beveiligingsprincipe, roldefinitie en scope. Het beveiligingsprincipe is het Azure Active Directory-object dat de rol toegewezen krijgt.

Aan de andere kant is de roldefinitie de ingebouwde of aangepaste Azure AD-rol die wordt toegewezen, terwijl de scope het niveau is waarop de rol wordt toegewezen. Er zijn 4 scopes waarop rollen worden toegewezen in Azure.

Specifiek worden Azure-rollen toegewezen aan een resource, een resourcegroep, een abonnement en een beheergroep. Om een rol toe te wijzen aan een resource, heb je de resource-ID nodig.

Om echter een rol toe te wijzen aan een resourcegroepscope, heb je de naam van de resourcegroep nodig. Door het commando Get-AzResourceGroup uit te voeren, worden alle resourcegroepen, inclusief hun namen in het huidige abonnement, geretourneerd.

Als je een rol wilt toewijzen op abonnementsniveau, heb je het abonnements-ID nodig. Om alle abonnementen in de tenant te vermelden, voer je het commando Get-AzSubscription uit.

Tenslotte worden rollen toegewezen aan een beheergroepscope die de naam van de beheergroep vereist. Om de naam van een beheergroep te verkrijgen, voer je het commando Get-AzManagementGroup uit.

Het begrijpen van deze elementen is belangrijk voor het beheren van Azure AD-rollen en machtigingen met PowerShell. In het resterende deel van het artikel onderzoeken we hoe de beveiligingsprincipaal, roldefinitie en scope worden gebruikt om rollen toe te wijzen en te beheren in Azure AD met behulp van PowerShell.

Vereisten voor het beheren van Azure AD-rollen en machtigingen met PowerShell

Voordat een beheerder rollen toewijst, moeten ze voldoen aan de volgende vereisten:

  1. De gebruiker moet worden toegewezen aan de rollen met machtigingen voor Microsoft.Authorization/roleAssignments/write. De enige rollen met deze machtiging zijn User Access Administrator, Eigenaar of Globale beheerder.
  2. Ten tweede heb je toegang nodig tot Azure Cloud Shell of Azure PowerShell.
  3. Het gebruikersaccount dat de PowerShell-opdrachten uitvoert, moet de machtiging Directory.Read.All van Microsoft Graph hebben.
  4. Ten slotte vereist het uitvoeren van sommige taken in dit artikel dat uw account over een minimum Azure AD Premium P1 licentie beschikt.

Naarmate we vorderen in dit artikel, leggen we de stappen uit om deze machtigingen toe te wijzen zoals vereist.

Stappen om Ingebouwde Azure AD-rollen toe te wijzen met PowerShellAls je op de bovenstaande cloud shell-link klikt en inlogt met je Azure-account, wordt een scherm weergegeven zoals het scherm in de onderstaande screenshot. Het voordeel van Azure Cloud Shell is dat het geen installatie van PowerShell-modules op je pc vereist.

I’ll be running the PowerShell commands in this and subsequent sections from Azure Cloud Shell, a browser-based shell that allows running Azure CLI or PowerShell commands. However, I’ll be running the commands from my computer. 

Als u op de bovenstaande koppeling naar Cloud Shell klikt en zich aanmeldt met uw Azure-account, wordt een scherm weergegeven zoals in de onderstaande schermafbeelding. Het voordeel van Azure Cloud Shell is dat u geen PowerShell-modules op uw pc hoeft te installeren.

Stap 1: Bepaal de object-id

U moet de object-id verkrijgen voordat u een rol aan een Azure-resource toewijst. Volg deze stappen om de object-id voor een gebruiker, groep of abonnement te bepalen.

1. Open Azure Cloud Shell – shell.azure.com en meld u aan met uw Azure-account.

Als u Azure Cloud Shell voor de eerste keer opent, moet u een opslagaccount maken.

2. Voer de onderstaande opdrachten uit om de id van de gebruiker of groep op te halen waaraan u een rol wilt toewijzen. In de eerste opdracht geef ik de id terug van een gebruiker die begint met

$userid = (Get-AzADUser -UserPrincipalName AnthonyRa@corp.itechguides.com).id
$groupid = (Get-AzADGroup -DisplayName "Helpdesk Admins (AAD)").id

Met de eerste opdracht wordt de id van de gebruiker opgeslagen in de variabele userid, terwijl met de tweede opdracht de groeps-id van de groep wordt opgeslagen in de variabele grouped. Vergeet niet om voordat u de opdrachten uitvoert UserPrincipalName en DisplayName te wijzigen.

Stap 2: Haal de toe te wijzen rol op

De volgende stap voor het beheren van Azure AD rollen en machtigingen met PowerShell is het bepalen van de rol die moet worden toegewezen. Begin met het weergeven van alle beschikbare rollen in uw Azure AD-tenant met behulp van de volgende opdracht.

Get-AzRoleDefinition | Format-Table -Property Name, IsCustom, Id

De opdracht toont de Naam en Id van alle rollen in de tenant. Bovendien geeft het True of False weer in de IsCustom-kolom. 

Om te demonstreren, wil ik de rol Security Admin toewijzen aan de gebruiker en groep die ik in Stap 1 heb bepaald. Om de naam van de rol weer te geven, leid ik de uitvoer van de Get-AzRoleDefinition-opdracht naar Where-Object zoals getoond in deze opdracht. 

$roleassignmentname = (Get-AzRoleDefinition | where-object {$_.name -eq "Security Admin"}).Name

Stap 3: Identificeer de Rol voor Toewijzingsbereik

De onderstaande opdracht retourneert de ResourceID van een opslagaccount (resource scope) en slaat deze op in de variabele ResourceID. 

Vervolgens wijs ik de gebruiker in stap 1 de rol “Security Admin” toe in deze opslagaccountresource. 

$scoperesourceID = (Get-AzResource | Where-object {$_.name -eq "veeambackup21"}).ResourceID

Stap 4: Wijs de Azure Rol toe

Gebruik de informatie in stappen 1 tot 3 om de onderstaande opdracht uit te voeren om de rol aan de gebruiker toe te wijzen. Voordat je de opdracht uitvoert, is de rol niet toegewezen aan deze opslagaccount, zoals te zien is in de onderstaande schermafbeelding.

De eerste opdracht wijst de rol “Beveiligingsbeheerder” toe aan een gebruiker die is opgeslagen in de variabele $userid. Op dezelfde manier wijst de tweede opdracht dezelfde rol toe aan een groep die is opgeslagen in de variabele $groupid.

New-AzRoleAssignment -ObjectId $userid -RoleDefinitionName $roleassignmentname -Scope $scoperesourceID
New-AzRoleAssignment -ObjectId $groupid -RoleDefinitionName $roleassignmentname -Scope $scoperesourceID

Na het uitvoeren van de bovenstaande opdrachten, toont het vernieuwen van de opslagaccounts de rol Beveiligingsbeheerder, en de gebruiker en groep die de rol toegewezen hebben gekregen.

Weergave van Azure AD Roltoewijzing met behulp van PowerShell

Eerder heb ik de rol “Beveiligingsbeheerder” toegewezen aan een gebruiker met UPN, [email protected]. Als je het je herinnert, was de userId van de gebruiker opgeslagen in de variabele $userid.

Op dezelfde manier was het scope-ID van de opslagaccount opgeslagen in de variabele $scoperesourceID. Om de roltoewijzing voor de gebruiker weer te geven, voer ik de onderstaande opdracht uit.

get-AzRoleAssignment -scope $scoperesourceID -ObjectId $userid

De opdracht toont de details van de roltoewijzing, inclusief de RoleAssignmentName en scope.

Je kunt dezelfde informatie voor de groep weergeven door deze opdracht uit te voeren.

get-AzRoleAssignment -scope $scoperesourceID -ObjectId $groupid

Beheer van Azure AD Rollen en Permissies met PowerShell Conclusie

Het beheren van Azure rollen vereist kennis van het op rollen gebaseerde toegangsbeheermodel. Bovendien is het essentieel om de elementen van Azure roltoewijzing te begrijpen – beveiligingsprincipe, roldefinitie en scope – om roltoewijzingen effectief te beheren met PowerShell. 

Niet alleen dat, maar een account dat rollen toewijst, moet aan enkele vereisten voldoen, zoals het configureren van PowerShell met de benodigde modules en het zorgen voor passende beheerdersrechten.

De stapsgewijze handleiding die in dit artikel wordt gegeven, biedt een duidelijke routekaart om te volgen bij het toewijzen van ingebouwde Azure AD rollen met behulp van PowerShell. Van het bepalen van het Object-ID tot het identificeren van de scope voor roltoewijzing, elk stadium is zorgvuldig uiteengezet, waardoor een naadloos en gecontroleerd roltoewijzingsproces wordt gefaciliteerd.

Source:
https://infrasos.com/managing-azure-ad-roles-and-permissions-with-powershell/