Überprüfen von Berechtigungen, die Anwendungen erteilt wurden
In diesem Artikel erfahren Sie, wie Sie Berechtigungen überprüfen, die Anwendungen in Ihrem Azure Active Directory (Azure AD)-Mandanten erteilt wurden. Sie müssen die Berechtigungen möglicherweise überprüfen, wenn Sie eine schädliche Anwendung erkannt haben oder wenn der Anwendung mehr Berechtigungen erteilt wurden als erforderlich. 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 Azure AD-Mandanten per Benutzer- oder Administratoreinwilligung hinzugefügt wurden. Weitere Informationen zur Einwilligung zu Anwendungen finden Sie unter Benutzer- und Administratoreinwilligung.
Voraussetzungen
Um Berechtigungen zu überprüfen, die Anwendungen erteilt wurden, benötigen Sie:
- Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
- Eine der folgenden Rollen: Globaler Administrator, Cloudanwendungsadministrator, Anwendungsadministrator.
- Ein Dienstprinzipalbesitzer, der kein Administrator ist, kann Aktualisierungstoken ungültig machen.
Wiederherstellen von Berechtigungen
Informationen zum Wiederherstellen von Berechtigungen, die widerrufen oder gelöscht wurden, finden Sie unter Wiederherstellen von Berechtigungen, die Anwendungen gewährt wurden.
Überprüfen und Widerrufen von Berechtigungen
Tipp
Die Schritte in diesem Artikel können je nach dem Portal, mit dem Sie beginnen, geringfügig variieren.
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.
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 mit der Rolle Cloudanwendungsadministrator an.
- Browsen Sie zu Identität>Anwendungen>Unternehmensanwendungen>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.
- Um eine gewährte Berechtigung zu widerrufen, wählen Sie die Berechtigung aus, die Sie widerrufen möchten, wählen Sie das Steuerelement … für diese Berechtigung aus und wählen Sie dann Berechtigung widerrufen aus.
Überprüfen und Widerrufen von Berechtigungen
Verwenden Sie das folgende Azure AD-PowerShell-Skript, um alle Berechtigungen zu widerrufen, die einer Anwendung erteilt wurden. Sie müssen sich mindestens als Cloudanwendungsadministrator anmelden.
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
}
Machen Sie die Aktualisierungstoken ungültig.
Entfernen Sie mit den folgenden Skripts appRoleAssignments von Benutzern oder Gruppen für die Anwendung.
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
}
Überprüfen und Widerrufen von Berechtigungen
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 "$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
}
Machen Sie die Aktualisierungstoken ungültig.
Entfernen Sie mit den folgenden Skripts appRoleAssignments von Benutzern oder Gruppen für die Anwendung.
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
}
Überprüfen und Widerrufen von Berechtigungen
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.
Rufen Sie den Dienstprinzipal mithilfe der Objekt-ID ab.
GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}
Beispiel:
GET https://graph.microsoft.com/v1.0/servicePrincipals/00063ffc-54e9-405d-b8f3-56124728e051
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}
Machen Sie die Aktualisierungstoken ungültig.
Führen Sie die folgenden Abfragen aus, um appRoleAssignments von Benutzern oder Gruppen für die Anwendung zu entfernen.
Rufen Sie den Dienstprinzipal mithilfe der Objekt-ID (objectId) ab.
GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}
Beispiel:
GET https://graph.microsoft.com/v1.0/servicePrincipals/57443554-98f5-4435-9002-852986eea510
Rufen Sie Azure AD-App-Rollenzuweisungen mithilfe der objectID des Dienstprinzipals ab.
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 aktueller Berechtigungen wird eine erneute Benutzereinwilligung für die Anwendung nicht verhindert. Wenn Sie die Benutzereinwilligung blockieren möchten, lesen Sie Konfigurieren der Benutzereinwilligung für Anwendungen.