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.
In diesem Artikel erfahren Sie, wie Sie die Berechtigungen überprüfen, die den Anwendungen in Ihrem Microsoft Entra-Mandanten erteilt wurden. Sie müssen die Berechtigungen möglicherweise überprüfen, wenn Sie eine schädliche Anwendung oder eine Anwendung mit mehr Berechtigungen als notwendig erkennen. Sie erfahren, wie Sie Berechtigungen mithilfe der Microsoft Graph-API und vorhandenen Versionen von PowerShell widerrufen, die der Anwendung erteilt wurden.
Die in diesem Artikel aufgeführten Schritte gelten für alle Anwendungen, die Ihrem Microsoft Entra-Mandanten per Benutzer- oder Administratoreinwilligung hinzugefügt wurden. Weitere Informationen zur Einwilligung zu Anwendungen finden Sie unter Benutzer- und Administratoreinwilligung.
Voraussetzungen
Um die an Anwendungen erteilten Berechtigungen zu überprüfen, benötigen Sie:
- Ein Microsoft Entra-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
- Eine der folgenden Rollen:
- Cloudanwendungsadministrator
- Anwendungsadministrator.
- Ein Dienstprinzipalbesitzer, der kein Administrator ist, kann Aktualisierungstoken ungültig machen.
Überprüfen und Widerrufen von Berechtigungen im Microsoft Entra Admin Center
Sie können auf das Microsoft Entra Admin Center zugreifen, um die Berechtigungen anzuzeigen, die einer App gewährt werden. Sie können Berechtigungen widerrufen, die von Administratoren für Ihre gesamte Organisation erteilt wurden, und Sie können kontextbezogene PowerShell-Skripts abrufen, um andere Aktionen auszuführen.
Informationen zum Wiederherstellen von widerrufenen oder gelöschten Berechtigungen finden Sie unter Wiederherstellen von Berechtigungen, die Anwendungen erteilt wurden.
So überprüfen Sie die Berechtigungen einer Anwendung, die für die gesamte Organisation oder für einen bestimmten Benutzer oder eine bestimmte Gruppe erteilt wurden:
- Melden Sie sich beim Microsoft Entra Admin Center mindestens als Cloudanwendungsadministrator an.
- Navigieren Sie zu Entra ID>Enterprise-Apps>alle Anwendungen.
- Wählen Sie die Anwendung aus, für die ein eingeschränkter Zugriff eingerichtet werden sollen.
- Wählen Sie Berechtigungen aus.
- Um Berechtigungen anzuzeigen, die für Ihre gesamte Organisation gelten, wählen Sie die Registerkarte Admin Zustimmung aus. Um Berechtigungen anzuzeigen, die einem bestimmten Benutzer oder einer bestimmten Gruppe erteilt wurden, wählen Sie die Registerkarte Benutzerzustimmung aus.
- Um die Details einer bestimmten Berechtigung anzuzeigen, wählen Sie die Berechtigung aus der Liste aus. Der Bereich Berechtigungsdetails wird geöffnet.
Nach dem Überprüfen der Berechtigungen, die einer Anwendung zugewiesen wurden, können Sie Berechtigungen widerrufen, die von Administrator*innen für Ihre gesamte Organisation erteilt wurden.
Hinweis
Sie können über das Portal keine Berechtigungen auf der Registerkarte Benutzereinwilligung widerrufen. Sie können diese Berechtigungen mithilfe von Microsoft Graph-API-Aufrufen oder PowerShell-Cmdlets widerrufen. Weitere Informationen finden Sie auf den Registerkarten „PowerShell“ und „Microsoft Graph“ in diesem Artikel.
So widerrufen Sie Berechtigungen auf der Registerkarte Administratoreinwilligung
- Sehen Sie sich die Liste der Berechtigungen auf der Registerkarte Administratoreinwilligung an.
- Wählen Sie die Berechtigung aus, die Sie widerrufen möchten, und wählen Sie dann das Steuerelement … für diese Berechtigung aus.
- Wählen Sie Berechtigung widerrufen aus.
Überprüfen und Widerrufen von Berechtigungen mithilfe von Microsoft Entra PowerShell
Verwenden Sie das folgende Microsoft Entra PowerShell-Skript, um alle Berechtigungen zu widerrufen, die einer Anwendung erteilt wurden. Sie müssen sich mindestens als Cloudanwendungsadministrator anmelden.
Connect-Entra -scopes "Application.ReadWrite.All", "DelegatedPermissionGrant.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
# Get Service Principal using objectId
$app_name = "<app-displayName>"
$sp = Get-EntraServicePrincipal -Filter "displayName eq '$app_name'"
# Get all delegated permissions for the service principal
$spOAuth2PermissionsGrants = Get-EntraOAuth2PermissionGrant -All | Where-Object { $_.clientId -eq $sp.ObjectId }
# Remove all delegated permissions granted to the service principal
$spOAuth2PermissionsGrants | ForEach-Object {
Remove-EntraOAuth2PermissionGrant -ObjectId $_.ObjectId
}
# Get all application permissions for the service principal
$spApplicationPermissions = Get-EntraServicePrincipalAppRoleAssignment -ObjectId $sp.ObjectId -All | Where-Object { $_.PrincipalType -eq "ServicePrincipal" }
# Remove all application permissions
$spApplicationPermissions | ForEach-Object {
Remove-EntraServicePrincipalAppRoleAssignment -ObjectId $_.PrincipalId -AppRoleAssignmentId $_.objectId
}
Entfernen aller Benutzer- und Gruppenzuweisungen mithilfe von Microsoft Entra PowerShell
Entfernen Sie App-Rollenzuweisungen (appRoleAssignments) für Benutzende oder Gruppen für die Anwendung mithilfe der folgenden Skripts.
connect-entra -scopes "Application.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
#Retrieve the service principal object ID.
$app_name = "<Your App's display name>"
$sp = Get-EntraServicePrincipal -Filter "displayName eq '$app_name'"
$sp.ObjectId
# Get Microsoft Entra App role assignments using objectId of the Service Principal
$assignments = Get-EntraServicePrincipalAppRoleAssignedTo -ObjectId $sp.ObjectId -All $true
# Remove all users and groups assigned to the application
$assignments | ForEach-Object {
if ($_.PrincipalType -eq "User") {
Remove-EntraUserAppRoleAssignment -ObjectId $_.PrincipalId -AppRoleAssignmentId $_.ObjectId
} elseif ($_.PrincipalType -eq "Group") {
Remove-EntraGroupAppRoleAssignment -ObjectId $_.PrincipalId -AppRoleAssignmentId $_.ObjectId
}
}
Überprüfen und Widerrufen von Berechtigungen über Microsoft Graph PowerShell
Verwenden Sie das folgende Microsoft Graph-PowerShell-Skript, um alle Berechtigungen zu widerrufen, die einer Anwendung erteilt wurden. Sie müssen sich mindestens als Cloudanwendungsadministrator anmelden.
Connect-MgGraph -Scopes "Application.ReadWrite.All", "Directory.ReadWrite.All", "DelegatedPermissionGrant.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
# Get Service Principal using objectId
$sp = Get-MgServicePrincipal -ServicePrincipalID "<ServicePrincipal objectID>"
Example: Get-MgServicePrincipal -ServicePrincipalId 'aaaaaaaa-bbbb-cccc-1111-222222222222'
# 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
}
Entfernen aller Benutzer- und Gruppenzuweisungen mithilfe von Microsoft Graph PowerShell
Entfernen Sie App-Rollenzuweisungen (appRoleAssignments) für Benutzende oder Gruppen für die Anwendung mithilfe der folgenden Skripts.
Connect-MgGraph -Scopes "Application.ReadWrite.All", "Directory.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
# Get Service Principal using objectId
$sp = Get-MgServicePrincipal -ServicePrincipalID "<ServicePrincipal objectID>"
Example: Get-MgServicePrincipal -ServicePrincipalId 'aaaaaaaa-bbbb-cccc-1111-222222222222'
# Get Microsoft Entra 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
}
Überprüfen und Widerrufen von Berechtigungen über Microsoft Graph
Um die Berechtigungen zu überprüfen, melden Sie sich bei Graph Explorer mindestens als Cloudanwendungsadministrator an.
Sie müssen den folgenden Berechtigungen zustimmen:
Application.ReadWrite.All
, Directory.ReadWrite.All
, DelegatedPermissionGrant.ReadWrite.All
, AppRoleAssignment.ReadWrite.All
.
Delegierte Berechtigungen
Führen Sie die folgenden Abfragen aus, um die einer Anwendung gewährten delegierten Berechtigungen zu überprüfen.
Abrufen des Dienstprinzipals mithilfe der Objekt-ID
GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}
Beispiel:
GET https://graph.microsoft.com/v1.0/servicePrincipals/00001111-aaaa-2222-bbbb-3333cccc4444
Abrufen aller delegierten Berechtigungen für den Dienstprinzipal
GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}/oauth2PermissionGrants
Entfernen Sie delegierte Berechtigungen mithilfe der oAuth2PermissionGrants-ID.
DELETE https://graph.microsoft.com/v1.0/oAuth2PermissionGrants/{id}
Anwendungsberechtigungen
Führen Sie die folgenden Abfragen aus, um die einer Anwendung gewährten Anwendungsberechtigungen zu überprüfen.
Abrufen aller Anwendungsberechtigungen für den Dienstprinzipal
GET https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignments
Entfernen von Anwendungsberechtigungen mithilfe der appRoleAssignment-ID
DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{resource-servicePrincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}
Entfernen aller Benutzer- und Gruppenzuweisungen mithilfe von Microsoft Graph
Führen Sie die folgenden Abfragen aus, um die "appRoleAssignments" von Benutzern oder Gruppen für die Anwendung zu entfernen.
Abrufen des Dienstprinzipals mithilfe der Objekt-ID (objectID)
GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}
Beispiel:
GET https://graph.microsoft.com/v1.0/servicePrincipals/aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
Abrufen der Microsoft Entra-App-Rollenzuweisungen mithilfe der Objekt-ID (objectID) des Dienstprinzipals
GET https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignedTo
Widerrufen Sie das Aktualisierungstoken für Benutzer und Gruppen, die der Anwendung über die appRoleAssignment-ID zugewiesen sind.
DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}
Hinweis
Durch das Widerrufen der aktuellen erteilten Berechtigung wird nicht verhindert, dass Benutzer erneut den angeforderten Berechtigungen der Anwendung zustimmen. Sie müssen verhindern, dass die Anwendung die Berechtigungen über die dynamische Einwilligung anfordert. Wenn Sie die Benutzereinwilligung insgesamt blockieren möchten, lesen Sie Konfigurieren der Benutzereinwilligung für Anwendungen.
Andere Autorisierung, die in Erwägung gezogen werden sollte
Delegierte und Anwendungsberechtigungen sind nicht die einzigen Möglichkeiten, Anwendungen und Benutzern Zugriff auf geschützte Ressourcen zu gewähren. Administratoren sollten andere Autorisierungssysteme kennen, die möglicherweise Zugriff auf vertrauliche Informationen gewähren. Beispiele für verschiedene Autorisierungssysteme bei Microsoft sind integrierte Microsoft Entra-Rollen, Exchange RBAC und ressourcenspezifische Einwilligung in Teams.