Machtigingen controleren die zijn verleend aan bedrijfstoepassingen
In dit artikel leert u hoe u machtigingen controleert die zijn verleend aan toepassingen in uw Microsoft Entra-tenant. Mogelijk moet u machtigingen controleren wanneer u een schadelijke toepassing detecteert, of wanneer aan de toepassing meer machtigingen zijn verleend dan nodig is. U leert hoe u machtigingen kunt intrekken die aan de toepassing zijn verleend met behulp van Microsoft Graph API en bestaande versies van PowerShell.
De stappen in dit artikel zijn van toepassing op alle toepassingen die zijn toegevoegd aan uw Microsoft Entra-tenant via gebruikers- of beheerderstoestemming. Zie Gebruikers- en beheerderstoestemming voor meer informatie over het verlenen van toestemming voor toepassingen.
Vereisten
Als u de aan toepassingen verleende machtigingen wilt controleren, hebt u het volgende nodig:
- Een Azure-account met een actief abonnement. Gratis een account maken
- Een van de volgende rollen: Cloud Application Beheer istrator, Application Beheer istrator.
- Een Service-principal-eigenaar die geen beheerder is, kan vernieuwingstokens ongeldig maken.
Machtigingen herstellen
Zie Machtigingen herstellen die aan toepassingen zijn verleend voor informatie over het herstellen van machtigingen die zijn ingetrokken of verwijderd.
Machtigingen controleren en intrekken
Tip
Stappen in dit artikel kunnen enigszins variƫren op basis van de portal waaruit u begint.
U hebt toegang tot het Microsoft Entra-beheercentrum om de machtigingen weer te geven die aan een app zijn verleend. U kunt machtigingen intrekken die zijn verleend door beheerders voor uw hele organisatie en u kunt contextuele PowerShell-scripts krijgen om andere acties uit te voeren.
Als u de machtigingen van een toepassing wilt bekijken die zijn verleend voor de hele organisatie of aan een specifieke gebruiker of groep:
- Meld u aan bij het Microsoft Entra-beheercentrum als ten minste een cloudtoepassing Beheer istrator.
- Blader naar Bedrijfstoepassingen voor identiteitstoepassingen>>>Alle toepassingen.
- Selecteer de toepassing waartoe u de toegang wilt beperken.
- Selecteer Machtigingen.
- Als u machtigingen wilt weergeven die van toepassing zijn op uw hele organisatie, selecteert u het tabblad Beheer toestemming. Als u machtigingen wilt weergeven die zijn verleend aan een specifieke gebruiker of groep, selecteert u het tabblad Gebruikerstoestemming.
- Als u de details van een bepaalde machtiging wilt weergeven, selecteert u de machtiging in de lijst. Het deelvenster Machtigingsgegevens wordt geopend.
Nadat u de machtigingen hebt bekeken die aan een toepassing zijn verleend, kunt u machtigingen intrekken die zijn verleend door beheerders voor uw hele organisatie.
Notitie
U kunt machtigingen niet intrekken op het tabblad Gebruikerstoestemming via de portal. U kunt deze machtigingen intrekken met behulp van Microsoft Graph API-aanroepen of PowerShell-cmdlets. Ga naar de tabbladen PowerShell en Microsoft Graph van dit artikel voor meer informatie.
Machtigingen intrekken op het tabblad Beheer toestemming:
- Bekijk de lijst met machtigingen op het tabblad Beheer toestemming.
- Kies de machtiging die u wilt intrekken en selecteer vervolgens het besturingselement ... voor die machtiging.
- Selecteer De machtiging Intrekken.
Machtigingen controleren en intrekken
Gebruik het volgende Azure AD PowerShell-script om alle machtigingen in te trekken die aan een toepassing zijn verleend. U moet zich aanmelden als ten minste een cloudtoepassing Beheer istrator.
Connect-AzureAD
# Get Service Principal using objectId
$sp = Get-AzureADServicePrincipal -ObjectId "<ServicePrincipal objectID>"
# Get all delegated permissions for the service principal
$spOAuth2PermissionsGrants = Get-AzureADOAuth2PermissionGrant -All $true| Where-Object { $_.clientId -eq $sp.ObjectId }
# Remove all delegated permissions
$spOAuth2PermissionsGrants | ForEach-Object {
Remove-AzureADOAuth2PermissionGrant -ObjectId $_.ObjectId
}
# Get all application permissions for the service principal
$spApplicationPermissions = Get-AzureADServiceAppRoleAssignedTo -ObjectId $sp.ObjectId -All $true | Where-Object { $_.PrincipalType -eq "ServicePrincipal" }
# Remove all application permissions
$spApplicationPermissions | ForEach-Object {
Remove-AzureADServiceAppRoleAssignment -ObjectId $_.PrincipalId -AppRoleAssignmentId $_.objectId
}
De vernieuwingstokens ongeldig maken
Verwijder appRoleAssignments voor gebruikers of groepen aan de toepassing met behulp van de volgende scripts.
Connect-AzureAD
# 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 | Where-Object {$_.PrincipalType -eq "User"}
# Revoke refresh token for all users assigned to the application
$assignments | ForEach-Object {
Revoke-AzureADUserAllRefreshToken -ObjectId $_.PrincipalId
}
Machtigingen controleren en intrekken
Gebruik het volgende Microsoft Graph PowerShell-script om alle machtigingen in te trekken die aan een toepassing zijn verleend. U moet zich aanmelden als ten minste een cloudtoepassing Beheer istrator.
Connect-MgGraph -Scopes "Application.ReadWrite.All", "Directory.ReadWrite.All", "DelegatedPermissionGrant.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
# Get Service Principal using objectId
$sp = Get-MgServicePrincipal -ServicePrincipalID "$ServicePrincipalID"
Example: Get-MgServicePrincipal -ServicePrincipalId '22c1770d-30df-49e7-a763-f39d2ef9b369'
# Get all delegated permissions for the service principal
$spOAuth2PermissionsGrants= Get-MgOauth2PermissionGrant -All| Where-Object { $_.clientId -eq $sp.Id }
# Remove all delegated permissions
$spOauth2PermissionsGrants |ForEach-Object {
Remove-MgOauth2PermissionGrant -OAuth2PermissionGrantId $_.Id
}
# Get all application permissions for the service principal
$spApplicationPermissions = Get-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $Sp.Id -All | Where-Object { $_.PrincipalType -eq "ServicePrincipal" }
# Remove all application permissions
$spApplicationPermissions | ForEach-Object {
Remove-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $Sp.Id -AppRoleAssignmentId $_.Id
}
De vernieuwingstokens ongeldig maken
Verwijder appRoleAssignments voor gebruikers of groepen aan de toepassing met behulp van de volgende scripts.
Connect-MgGraph -Scopes "Application.ReadWrite.All", "Directory.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
# Get Service Principal using objectId
$sp = Get-MgServicePrincipal -ServicePrincipalID "$ServicePrincipalID"
Example: Get-MgServicePrincipal -ServicePrincipalId '22c1770d-30df-49e7-a763-f39d2ef9b369'
# Get Azure AD App role assignments using objectID of the Service Principal
$spApplicationPermissions = Get-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalID $sp.Id -All | Where-Object { $_.PrincipalType -eq "ServicePrincipal" }
# Revoke refresh token for all users assigned to the application
$spApplicationPermissions | ForEach-Object {
Remove-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $_.PrincipalId -AppRoleAssignmentId $_.Id
}
Machtigingen controleren en intrekken
Als u machtigingen wilt controleren, meldt u zich aan bij Graph Explorer als ten minste een cloudtoepassing Beheer istrator.
U moet toestemming geven voor de volgende machtigingen:
Application.ReadWrite.All
, , Directory.ReadWrite.All
DelegatedPermissionGrant.ReadWrite.All
, . AppRoleAssignment.ReadWrite.All
Gedelegeerde machtigingen
Voer de volgende query's uit om gedelegeerde machtigingen te controleren die zijn verleend aan een toepassing.
Haal de service-principal op met behulp van de object-id.
GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}
Voorbeeld:
GET https://graph.microsoft.com/v1.0/servicePrincipals/00063ffc-54e9-405d-b8f3-56124728e051
Alle gedelegeerde machtigingen voor de service-principal ophalen
GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}/oauth2PermissionGrants
Verwijder gedelegeerde machtigingen met behulp van de id oAuth2PermissionGrants.
DELETE https://graph.microsoft.com/v1.0/oAuth2PermissionGrants/{id}
Toepassingstoestemming
Voer de volgende query's uit om toepassingsmachtigingen te controleren die aan een toepassing zijn verleend.
Alle toepassingsmachtigingen voor de service-principal ophalen
GET https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignments
Toepassingsmachtigingen verwijderen met behulp van appRoleAssignment-id
DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{resource-servicePrincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}
De vernieuwingstokens ongeldig maken
Voer de volgende query's uit om appRoleAssignments van gebruikers of groepen te verwijderen naar de toepassing.
Service-principal ophalen met behulp van objectID.
GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}
Voorbeeld:
GET https://graph.microsoft.com/v1.0/servicePrincipals/57443554-98f5-4435-9002-852986eea510
Haal roltoewijzingen van Microsoft Entra-apps op met behulp van objectID van de service-principal.
GET https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignedTo
Het vernieuwingstoken intrekken voor gebruikers en groepen die zijn toegewezen aan de toepassing met behulp van appRoleAssignment-id.
DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}
Notitie
Als u de huidige verleende machtiging intrekt, kunnen gebruikers niet opnieuw toestemming geven voor de toepassing. Als u wilt voorkomen dat gebruikers toestemming geven, leest u Configureren hoe gebruikers toestemming geven voor toepassingen.