Überprüfen von Berechtigungen, die Anwendungen erteilt wurden

In diesem Artikel erfahren Sie, wie Sie Berechtigungen überprüfen, die Anwendungen in Ihrem Microsoft Entra-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 Microsoft Entra-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:

  1. Melden Sie sich beim Microsoft Entra Admin Center mindestens als Cloudanwendungsadministrator an.
  2. Browsen Sie zu Identität>Anwendungen>Unternehmensanwendungen>Alle Anwendungen.
  3. Wählen Sie die Anwendung aus, für die ein eingeschränkter Zugriff eingerichtet werden sollen.
  4. Wählen Sie Berechtigungen aus.
  5. 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.
  6. Um die Details einer bestimmten Berechtigung anzuzeigen, wählen Sie die Berechtigung aus der Liste aus. Der Bereich Berechtigungsdetails wird geöffnet. Nachdem Sie die Berechtigungen überprüft haben, 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

  1. Sehen Sie sich die Liste der Berechtigungen auf der Registerkarte Administratoreinwilligung an.
  2. Wählen Sie die Berechtigung aus, die Sie widerrufen möchten, und wählen Sie dann das Steuerelement für diese Berechtigung aus. Screenshot shows how to revoke admin consent.
  3. Wählen Sie 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.

  1. 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
    
  2. Abrufen aller delegierten Berechtigungen für den Dienstprinzipal

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}/oauth2PermissionGrants
    
  3. 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.

  1. Abrufen aller Anwendungsberechtigungen für den Dienstprinzipal

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignments
    
  2. 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.

  1. 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
    
  2. Rufen Sie Microsoft Entra-App-Rollenzuweisungen mithilfe der objectID des Dienstprinzipals ab.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignedTo
    
  3. 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.

Nächste Schritte