Partilhar via


Rever as permissões concedidas a aplicações empresariais

Neste artigo, você aprenderá a revisar as permissões concedidas a aplicativos em seu locatário do Microsoft Entra. Talvez seja necessário revisar as permissões quando detetar um aplicativo mal-intencionado ou quando o aplicativo tiver recebido mais permissões do que o necessário. Você aprende a revogar permissões concedidas ao aplicativo usando a API do Microsoft Graph e versões existentes do PowerShell.

As etapas neste artigo se aplicam a todos os aplicativos que foram adicionados ao seu locatário do Microsoft Entra por meio do consentimento do usuário ou administrador. Para obter mais informações sobre como consentir com aplicativos, consulte Consentimento de usuário e administrador.

Pré-requisitos

Para revisar as permissões concedidas aos aplicativos, você precisa:

  • Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
  • Uma das seguintes funções: Cloud Application Administrator, Application Administrator.
  • Um proprietário da entidade de serviço que não seja um administrador pode invalidar tokens de atualização.

Restaurando permissões

Consulte Restaurar permissões concedidas a aplicativos para obter informações sobre como restaurar permissões que foram revogadas ou excluídas.

Rever e revogar permissões

Gorjeta

As etapas neste artigo podem variar ligeiramente com base no portal a partir do qual você começou.

Pode aceder ao centro de administração do Microsoft Entra para ver as permissões concedidas a uma aplicação. Você pode revogar permissões concedidas por administradores para toda a sua organização e pode obter scripts contextuais do PowerShell para executar outras ações.

Para rever as permissões de uma aplicação que foram concedidas para toda a organização ou para um utilizador ou grupo específico:

  1. Entre no centro de administração do Microsoft Entra como pelo menos um administrador de aplicativos na nuvem.
  2. Navegue até Identity>Applications>Enterprise applications>Todos os aplicativos.
  3. Selecione o aplicativo ao qual você deseja restringir o acesso.
  4. Selecione Permissões.
  5. Para ver as permissões que se aplicam a toda a sua organização, selecione a guia Consentimento do administrador. Para exibir as permissões concedidas a um usuário ou grupo específico, selecione a guia Consentimento do usuário.
  6. Para exibir os detalhes de uma determinada permissão, selecione-a na lista. O painel Detalhes da Permissão é aberto. Depois de analisar as permissões concedidas a um aplicativo, você pode revogar as permissões concedidas pelos administradores para toda a organização.

    Nota

    Não é possível revogar permissões na guia Consentimento do usuário usando o portal. Você pode revogar essas permissões usando chamadas de API do Microsoft Graph ou cmdlets do PowerShell. Vá para as guias PowerShell e Microsoft Graph deste artigo para obter mais informações.

Para revogar permissões na guia Consentimento do administrador:

  1. Exiba a lista de permissões na guia Consentimento do administrador.
  2. Escolha a permissão que deseja revogar e, em seguida, selecione o controle ... para essa permissão. A captura de tela mostra como revogar o consentimento do administrador.
  3. Selecione Revogar permissão.

Rever e revogar permissões

Use o seguinte script do Azure AD PowerShell para revogar todas as permissões concedidas a um aplicativo. Você precisa entrar como pelo menos um administrador de aplicativos na nuvem.

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
}

Invalidar os tokens de atualização

Remova appRoleAssignments para usuários ou grupos para o aplicativo usando os scripts a seguir.

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
}

Rever e revogar permissões

Use o seguinte script do Microsoft Graph PowerShell para revogar todas as permissões concedidas a um aplicativo. Você precisa entrar como pelo menos um administrador de aplicativos na nuvem.

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 '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
 }

Invalidar os tokens de atualização

Remova appRoleAssignments para usuários ou grupos para o aplicativo usando os scripts a seguir.

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 'aaaaaaaa-bbbb-cccc-1111-222222222222'

# 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
  }

Rever e revogar permissões

Para rever as permissões, inicie sessão no Graph Explorer como pelo menos um Administrador de Aplicações na Nuvem.

Você precisa consentir com as seguintes permissões:

Application.ReadWrite.All, Directory.ReadWrite.All, DelegatedPermissionGrant.ReadWrite.All, AppRoleAssignment.ReadWrite.All.

Permissões delegadas

Execute as consultas a seguir para revisar as permissões delegadas concedidas a um aplicativo.

  1. Obtenha a entidade de serviço usando a ID do objeto.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}
    

    Exemplo:

    GET https://graph.microsoft.com/v1.0/servicePrincipals/00063ffc-54e9-405d-b8f3-56124728e051
    
  2. Obter todas as permissões delegadas para o principal de serviço

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}/oauth2PermissionGrants
    
  3. Remova as permissões delegadas usando oAuth2PermissionGrants ID.

    DELETE https://graph.microsoft.com/v1.0/oAuth2PermissionGrants/{id}
    

Permissões de aplicação

Execute as consultas a seguir para revisar as permissões de aplicativo concedidas a um aplicativo.

  1. Obter todas as permissões de aplicação para o principal de serviço

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignments
    
  2. Remover permissões de aplicativo usando appRoleAssignment ID

    DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{resource-servicePrincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}
    

Invalidar os tokens de atualização

Execute as consultas a seguir para remover appRoleAssignments de usuários ou grupos para o aplicativo.

  1. Obtenha a entidade de serviço usando objectID.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{id}
    

    Exemplo:

    GET https://graph.microsoft.com/v1.0/servicePrincipals/57443554-98f5-4435-9002-852986eea510
    
  2. Obtenha atribuições de função do Aplicativo Microsoft Entra usando objectID da Entidade de Serviço.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignedTo
    
  3. Revogar token de atualização para usuários e grupos atribuídos ao aplicativo usando appRoleAssignment ID.

    DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}
    

Nota

Revogar a permissão concedida atualmente não impedirá que os usuários voltem a consentir com o aplicativo. Se você quiser bloquear o consentimento dos usuários, leia Configurar como os usuários consentem com aplicativos.

Próximos passos