Toewijzing van gebruikers en groepen aan een toepassing beheren
In dit artikel leest u hoe u gebruikers en groepen toewijst aan een bedrijfstoepassing in Microsoft Entra-id met behulp van PowerShell. Wanneer u een gebruiker aan een toepassing toewijst, wordt de toepassing weergegeven in de Mijn apps portal van de gebruiker voor eenvoudige toegang. Als de toepassing app-rollen beschikbaar maakt, kunt u ook een specifieke app-rol toewijzen aan de gebruiker.
Wanneer u een groep toewijst aan een toepassing, hebben alleen gebruikers in de groep toegang. De toewijzing wordt niet trapsgewijs toegewezen aan geneste groepen.
Voor toewijzing op basis van een groep is Microsoft Entra ID P1 of P2 vereist. Toewijzing op basis van groepen wordt ondersteund voor beveiligingsgroepen, Microsoft 365-groepen en distributiegroepen waarvan SecurityEnabled
de instelling alleen is ingesteld True
. Geneste groepslidmaatschappen worden momenteel niet ondersteund. Zie de pagina met prijzen voor Microsoft Entra voor meer licentievereisten voor de functies die in dit artikel worden besproken.
Voor meer controle kunnen bepaalde typen bedrijfstoepassingen worden geconfigureerd om gebruikerstoewijzing te vereisen. Zie Toegang tot een toepassing beheren voor meer informatie over het vereisen van gebruikerstoewijzing voor een app.
Notitie
Toepassingen waarvoor gebruikers moeten worden toegewezen aan de toepassing, moeten toestemming hebben van een beheerder, zelfs als het beleid voor gebruikerstoestemming voor uw directory een gebruiker anders toestemming geeft namens zichzelf.
Voorwaarden
Als u gebruikers wilt toewijzen aan een bedrijfstoepassing, hebt u het volgende nodig:
- Een Microsoft Entra-account met een actief abonnement. Als u nog geen account hebt, kunt u gratis een account maken.
- Een van de volgende rollen: cloudtoepassingsbeheerder, toepassingsbeheerder of eigenaar van de service-principal.
- Microsoft Entra ID P1 of P2 voor toewijzing op basis van groepen. Zie de pagina met prijzen voor Microsoft Entra voor meer licentievereisten voor de functies die in dit artikel worden besproken.
Fooi
Stappen in dit artikel kunnen enigszins variƫren op basis van de portal waaruit u begint.
Gebruikers en groepen toewijzen aan een toepassing met behulp van het Microsoft Entra-beheercentrum
Een gebruikers- of groepsaccount toewijzen aan een bedrijfstoepassing:
Meld u als cloudtoepassingsbeheerder aan bij het Microsoft Entra-beheercentrum.
Blader naar Bedrijfstoepassingen voor identiteitstoepassingen>>>Alle toepassingen.
Voer de naam van de bestaande toepassing in het zoekvak in en selecteer vervolgens de toepassing in de zoekresultaten.
Selecteer Gebruikers en groepen en selecteer vervolgens Gebruiker/groep toevoegen.
Selecteer Geen geselecteerd onder Gebruikers en groepen in het deelvenster Toewijzing toevoegen.
Zoek en selecteer de gebruiker of groep die u wilt toewijzen aan de toepassing. Bijvoorbeeld,
contosouser1@contoso.com
ofcontosoteam1@contoso.com
.Selecteer Selecteren.
Selecteer onder Een rol selecteren de rol die u wilt toewijzen aan de gebruiker of groep. Als u nog geen rollen hebt gedefinieerd, is de standaardrol Standaardtoegang.
Selecteer Toewijzen in het deelvenster Toewijzing toevoegen de optie Toewijzen om de gebruiker of groep toe te wijzen aan de toepassing.
Gebruikers en groepen intrekken vanuit een toepassing
- Volg de stappen in het gedeelte Gebruikers en groepen toewijzen aan een toepassingssectie om naar het deelvenster Gebruikers en groepen te navigeren.
- Zoek en selecteer de gebruiker of groep die u wilt intrekken uit de toepassing.
- Selecteer Verwijderen om de gebruiker of groep uit de toepassing op te heffen.
Gebruikers en groepen toewijzen aan een toepassing met behulp van Azure AD PowerShell
Open een Windows PowerShell-opdrachtprompt met verhoogde bevoegdheid.
Voer
Connect-AzureAD
en meld u aan als ten minste een cloudtoepassingsbeheerder.Gebruik het volgende script om een gebruiker en rol toe te wijzen aan een toepassing:
# Assign the values to the variables $username = "<Your user's UPN>" $app_name = "<Your App's display name>" $app_role_name = "<App role display name>" # Get the user to assign, and the service principal for the app to assign to $user = Get-AzureADUser -ObjectId "$username" $sp = Get-AzureADServicePrincipal -Filter "displayName eq '$app_name'" $appRole = $sp.AppRoles | Where-Object { $_.DisplayName -eq $app_role_name } # Assign the user to the app role New-AzureADUserAppRoleAssignment -ObjectId $user.ObjectId -PrincipalId $user.ObjectId -ResourceId $sp.ObjectId -Id $appRole.Id
Als u een groep wilt toewijzen aan een bedrijfs-app, moet u vervangen door Get-AzureADUser
Get-AzureADGroup
en vervangen door New-AzureADUserAppRoleAssignment
New-AzureADGroupAppRoleAssignment
.
Zie de documentatie voor New-AzureADGroupAppRoleAssignment voor meer informatie over het toewijzen van een groep aan een toepassingsrol.
Voorbeeld
In dit voorbeeld wordt de gebruiker Britta Simon toegewezen aan de Microsoft Workplace Analytics-toepassing met behulp van PowerShell.
Wijs in PowerShell de bijbehorende waarden toe aan de variabelen $username, $app_name en $app_role_name.
# Assign the values to the variables $username = "britta.simon@contoso.com" $app_name = "Workplace Analytics"
In dit voorbeeld weten we niet wat de exacte naam is van de toepassingsrol die we willen toewijzen aan Britta Simon. Voer de volgende opdrachten uit om de gebruiker ($user) en de service-principal ($sp) op te halen met behulp van de UPN van de gebruiker en de weergavenamen van de service-principal.
# Get the user to assign, and the service principal for the app to assign to $user = Get-AzureADUser -ObjectId "$username" $sp = Get-AzureADServicePrincipal -Filter "displayName eq '$app_name'"
Voer de opdracht
$sp.AppRoles
uit om de rollen weer te geven die beschikbaar zijn voor de Workplace Analytics-toepassing. In dit voorbeeld willen we Britta Simon de rol Analyst (Beperkte toegang) toewijzen.Wijs de rolnaam toe aan de
$app_role_name
variabele.# Assign the values to the variables $app_role_name = "Analyst (Limited access)" $appRole = $sp.AppRoles | Where-Object { $_.DisplayName -eq $app_role_name }
Voer de volgende opdracht uit om de gebruiker toe te wijzen aan de app-rol:
# Assign the user to the app role New-AzureADUserAppRoleAssignment -ObjectId $user.ObjectId -PrincipalId $user.ObjectId -ResourceId $sp.ObjectId -Id $appRole.Id
Gebruikers en groepen uit een toepassing intrekken met behulp van Azure AD PowerShell
Open een Windows PowerShell-opdrachtprompt met verhoogde bevoegdheid.
Voer
Connect-AzureAD
en meld u aan als ten minste een cloudtoepassingsbeheerder.Gebruik het volgende script om een gebruiker en rol uit een toepassing te verwijderen.
# Store the proper parameters $user = get-azureaduser -ObjectId <objectId> $spo = Get-AzureADServicePrincipal -ObjectId <objectId> #Get the ID of role assignment $assignments = Get-AzureADServiceAppRoleAssignment -ObjectId $spo.ObjectId | Where {$_.PrincipalDisplayName -eq $user.DisplayName} #if you run the following, it will show you what is assigned what $assignments | Select * #To remove the App role assignment run the following command. Remove-AzureADServiceAppRoleAssignment -ObjectId $spo.ObjectId -AppRoleAssignmentId $assignments[assignment number].ObjectId
Alle gebruikers verwijderen die zijn toegewezen aan de toepassing met behulp van Azure AD PowerShell
Gebruik het volgende script om alle gebruikers en groepen te verwijderen die aan de toepassing zijn toegewezen.
#Retrieve the service principal object ID.
$app_name = "<Your App's display name>"
$sp = Get-AzureADServicePrincipal -Filter "displayName eq '$app_name'"
$sp.ObjectId
# Get Service Principal using objectId
$sp = Get-AzureADServicePrincipal -ObjectId "<ServicePrincipal objectID>"
# Get Azure AD App role assignments using objectId of the Service Principal
$assignments = Get-AzureADServiceAppRoleAssignment -ObjectId $sp.ObjectId -All $true
# Remove all users and groups assigned to the application
$assignments | ForEach-Object {
if ($_.PrincipalType -eq "User") {
Remove-AzureADUserAppRoleAssignment -ObjectId $_.PrincipalId -AppRoleAssignmentId $_.ObjectId
} elseif ($_.PrincipalType -eq "Group") {
Remove-AzureADGroupAppRoleAssignment -ObjectId $_.PrincipalId -AppRoleAssignmentId $_.ObjectId
}
}
Gebruikers en groepen toewijzen aan een toepassing met behulp van Microsoft Graph PowerShell
- Open een Windows PowerShell-opdrachtprompt met verhoogde bevoegdheid.
- Voer
Connect-MgGraph -Scopes "Application.ReadWrite.All", "Directory.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
en meld u aan als ten minste een cloudtoepassingsbeheerder. - Gebruik het volgende script om een gebruiker en rol toe te wijzen aan een toepassing:
# Assign the values to the variables
$userId = "<Your user's ID>"
$app_name = "<Your App's display name>"
$app_role_name = "<App role display name>"
$sp = Get-MgServicePrincipal -Filter "displayName eq '$app_name'"
# Get the user to assign, and the service principal for the app to assign to
$params = @{
"PrincipalId" =$userId
"ResourceId" =$sp.Id
"AppRoleId" =($sp.AppRoles | Where-Object { $_.DisplayName -eq $app_role_name }).Id
}
# Assign the user to the app role
New-MgUserAppRoleAssignment -UserId $userId -BodyParameter $params |
Format-List Id, AppRoleId, CreationTime, PrincipalDisplayName,
PrincipalId, PrincipalType, ResourceDisplayName, ResourceId
Gebruikers en groepen uit een toepassing intrekken met Behulp van Microsoft Graph PowerShell
- Open een Windows PowerShell-opdrachtprompt met verhoogde bevoegdheid.
- Voer
Connect-MgGraph -Scopes "Application.ReadWrite.All", "Directory.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
en meld u aan als ten minste een cloudtoepassingsbeheerder. Gebruik het volgende script om een gebruiker en rol uit een toepassing te verwijderen.
# Get the user and the service principal
$user = Get-MgUser -UserId <userid>
$spo = Get-MgServicePrincipal -ServicePrincipalId <ServicePrincipalId>
# Get the Id of the role assignment
$assignments = Get-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $spo.Id | Where {$_.PrincipalDisplayName -eq $user.DisplayName}
# if you run the following, it will show you the list of users assigned to the application
$assignments | Select *
# To remove the App role assignment run the following command.
Remove-MgServicePrincipalAppRoleAssignedTo -AppRoleAssignmentId '<AppRoleAssignment-id>' -ServicePrincipalId $spo.Id
Alle gebruikers en groepen verwijderen die zijn toegewezen aan de toepassing met behulp van Microsoft Graph PowerShell
Gebruik het volgende script om alle gebruikers en groepen te verwijderen die aan de toepassing zijn toegewezen.
$assignments | ForEach-Object {
if ($_.PrincipalType -in ("user", "Group")) {
Remove-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $Sp.Id -AppRoleAssignmentId $_.Id }
}
Gebruikers en groepen toewijzen aan een toepassing met behulp van Microsoft Graph API
Als u gebruikers en groepen wilt toewijzen aan een toepassing, meldt u zich aan bij Graph Explorerals ten minste een cloudtoepassingsbeheerder.
U moet toestemming geven voor de volgende machtigingen:
Application.ReadWrite.All
, ,Directory.ReadWrite.All
AppRoleAssignment.ReadWrite.All
.Als u een app-roltoewijzing wilt verlenen, hebt u drie id's nodig:
principalId
: De id van de gebruiker of groep waaraan u de app-rol toewijst.resourceId
: De id van de resourceservicePrincipal die de app-rol definieert.appRoleId
: De id van de appRole (gedefinieerd op de resourceservice-principal) die moet worden toegewezen aan een gebruiker of groep.
Haal de bedrijfstoepassing op. Filter op DisplayName.
GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq '{appDisplayName}'
Noteer de volgende waarden uit de hoofdtekst van het antwoord:
- Object-id van de bedrijfstoepassing
- appRoleId die u aan de gebruiker toewijst. Als de toepassing geen rollen beschikbaar maakt, krijgt de gebruiker de standaardtoegangsrol toegewezen.
Haal de gebruiker op door te filteren op de principal-naam van de gebruiker. Noteer de object-id van de gebruiker.
GET https://graph.microsoft.com/v1.0/users/{userPrincipalName}
Wijs de gebruiker toe aan de toepassing.
POST https://graph.microsoft.com/v1.0/servicePrincipals/{resource-servicePrincipal-id}/appRoleAssignedTo { "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222", "resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1", "appRoleId": "00000000-0000-0000-0000-000000000000" }
In het voorbeeld vertegenwoordigen zowel de resource-servicePrincipal-id als resourceId de bedrijfstoepassing.
Gebruikers en groepen uit een toepassing intrekken met behulp van Microsoft Graph API
Als u de toewijzing van gebruikers en groepen uit de toepassing ongedaan wilt maken, voert u de volgende query uit.
Haal de bedrijfstoepassing op. Filter op displayName.
GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq '{appDisplayName}'
Haal de lijst met appRoleAssignments voor de toepassing op.
GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}/appRoleAssignedTo
Verwijder de appRoleAssignments door de appRoleAssignment-id op te geven.
DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{resource-servicePrincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}