Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Neste artigo, você aprenderá como conceder consentimento administrativo em todo o locatário a um aplicativo no Microsoft Entra ID. Para entender como definir configurações individuais de consentimento do usuário, consulte Configurar como os usuários finais consentem com aplicativos.
Ao conceder consentimento de administrador para todo o locatário a um aplicativo, você permite que o aplicativo acesse as permissões solicitadas em nome de toda a organização. A concessão de consentimento do administrador em nome de uma organização é uma operação sensível, pois pode permitir que o editor do aplicativo acesse partes significativas dos dados da organização ou execute operações altamente privilegiadas. Exemplos de tais operações podem ser gerenciamento de funções, acesso total a todas as caixas de correio ou todos os sites, e personificação completa do usuário. Portanto, é preciso examinar atentamente as permissões que o aplicativo está solicitando antes de conceder o consentimento.
Por padrão, o fornecimento de consentimento do administrador em todo o locatário a um aplicativo permite que todos os usuários acessem o aplicativo, a menos que haja outro tipo de restrição. Para restringir quais usuários podem entrar em um aplicativo, configure o aplicativo para exigir a atribuição do usuário e, em seguida, atribua usuários ou grupos ao aplicativo.
Importante
A concessão de consentimento do administrador em todo o locatário pode revogar permissões que já foram concedidas em todo o locatário para esse aplicativo. As permissões que os usuários já concederam por conta própria não são afetadas.
Pré-requisitos
Conceder consentimento de administrador em todo o locatário exige que você entre como um usuário autorizado a consentir em nome da organização.
Para conceder o consentimento de administrador em todo o locatário, você precisa:
Uma conta de usuário do Microsoft Entra com uma das seguintes funções:
- Administrador de Funções Privilegiadas, para conceder consentimento a aplicativos que solicitam qualquer permissão para qualquer API.
- Administrador de Aplicativos na Nuvem ou Administrador de Aplicativos, para conceder consentimento para aplicativos que solicitam qualquer permissão para qualquer API, exceto funções de aplicativo do Microsoft Graph (permissões de aplicativo).
- Uma função de diretório personalizada que inclui a permissão para conceder permissões a aplicativos, para as permissões exigidas pelo aplicativo.
Conceder consentimento de administrador para todo o locatário no painel de aplicativos corporativos
Você pode conceder consentimento de administrador em todo o locatário por meio do painel Aplicativos Empresariais se o aplicativo já estiver provisionado em seu locatário. Por exemplo, um aplicativo poderá ser provisionado em seu locatário se pelo menos um usuário consentir com o aplicativo. Para obter mais informações, consulte Como e por que os aplicativos são adicionados à ID do Microsoft Entra.
Para conceder consentimento de administrador em todo o locatário a um aplicativo listado no painel Aplicativos Empresariais :
- Entre no Centro de administração do Microsoft Entra como pelo menos um Administrador de Aplicativos na Nuvem.
- Navegue até Entra ID>Aplicativos empresariais>Todos os aplicativos.
- Insira o nome do aplicativo existente na caixa de pesquisa e, em seguida, selecione o aplicativo nos resultados da pesquisa.
- Selecione Permissões em Segurança.
- Examine atentamente as permissões que o aplicativo requer. Se você concordar com as permissões necessárias pelo aplicativo, selecione Conceder consentimento do administrador.
Conceder consentimento de administrador no painel de Registros de aplicativo
Você pode conceder consentimento do administrador para todo o locatário de App registrations no Microsoft Entra admin center para aplicativos que sua organização desenvolve e registra diretamente em seu locatário do Microsoft Entra.
Para conceder consentimento administrativo em nível de locatário nos registros de aplicativo:
- No centro de administração do Microsoft Entra, navegue até Entra ID>Registros de aplicativos>Todos os aplicativos.
- Insira o nome do aplicativo existente na caixa de pesquisa e, em seguida, selecione o aplicativo nos resultados da pesquisa.
- Selecione permissões de API em Gerenciar.
- Examine atentamente as permissões que o aplicativo requer. Se você concordar, selecione Conceder consentimento do administrador.
Construa a URL para conceder consentimento de administrador em todo o locatário
Ao fornecer consentimento de administrador em todo o locatário usando um dos métodos descritos na seção anterior, uma janela é aberta no portal do centro de administração do Microsoft Entra para solicitar o consentimento do administrador em todo o locatário. Se você conhecer a ID do cliente do aplicativo (também conhecido como ID do aplicativo), você poderá criar a mesma URL para conceder consentimento de administrador em todo o locatário.
A URL de consentimento de administrador em todo o locatário tem o seguinte formato:
https://login.microsoftonline.com/{organization}/adminconsent?client_id={client-id}
Em que:
-
{client-id}
é a ID do cliente do aplicativo (também conhecida como ID do aplicativo). -
{organization}
é a ID do locatário ou qualquer nome de domínio verificado do locatário no qual você deseja consentir o aplicativo. Você pode usar o valororganizations
, o que fará com que o consentimento ocorra no locatário inicial do usuário com o qual você conecta.
Sempre revise atentamente as permissões que um aplicativo solicitar antes de conceder consentimento.
Para obter mais informações sobre como construir a URL de consentimento do administrador em todo o locatário, consulte o consentimento do administrador na plataforma de identidade da Microsoft.
Fornecer consentimento de administrador para permissões delegadas usando o PowerShell do Microsoft Graph
Nesta seção, você concede permissões delegadas ao seu aplicativo. Permissões delegadas são permissões que seu aplicativo precisa para acessar uma API em nome de um usuário conectado. As permissões são definidas por uma API de recurso e concedidas ao seu aplicativo empresarial, que é o aplicativo cliente. Esse consentimento é fornecido em nome de todos os usuários.
No exemplo a seguir, a API de recurso é Microsoft Graph com o ID de objeto aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
. A API do Microsoft Graph define as permissões delegadas, User.Read.All
e Group.Read.All
. O consentType é AllPrincipals
, indicando que você está consentindo em nome de todos os usuários no locatário. A ID do objeto do aplicativo empresarial cliente é aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
.
Cuidado
Portanto, tenha cuidado! As permissões concedidas programaticamente não estão sujeitas a revisão nem confirmação. Elas entram em vigor imediatamente.
Conecte-se ao Microsoft Graph PowerShell e entre como pelo menos um Administrador de Aplicativos na Nuvem.
Connect-MgGraph -Scopes "Application.ReadWrite.All", "DelegatedPermissionGrant.ReadWrite.All"
Recupere todas as permissões delegadas definidas pelo Microsoft Graph (o aplicativo de recurso) em seu aplicativo de locatário. Identifique as permissões delegadas que você precisa conceder ao aplicativo cliente. Neste exemplo, as permissões de delegação são
User.Read.All
eGroup.Read.All
Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" -Property Oauth2PermissionScopes | Select -ExpandProperty Oauth2PermissionScopes | fl
Conceda as permissões delegadas ao aplicativo empresarial cliente executando a solicitação a seguir.
$params = @{ "ClientId" = "00001111-aaaa-2222-bbbb-3333cccc4444" "ConsentType" = "AllPrincipals" "ResourceId" = "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1" "Scope" = "User.Read.All Group.Read.All" } New-MgOauth2PermissionGrant -BodyParameter $params | Format-List Id, ClientId, ConsentType, ResourceId, Scope
Confirme se você concedeu consentimento de administrador em todo o locatário executando a solicitação a seguir.
Get-MgOauth2PermissionGrant -Filter "clientId eq '00001111-aaaa-2222-bbbb-3333cccc4444' and consentType eq 'AllPrincipals'"
Fornecer consentimento de administrador para permissões de aplicativo usando o PowerShell do Microsoft Graph
Nesta seção, você concede permissões de aplicativo para seu aplicativo empresarial. As permissões de aplicativo são permissões que seu aplicativo precisa para acessar uma API de recurso. As permissões são definidas pela API de recurso e concedidas ao seu aplicativo empresarial, que é o aplicativo principal. Depois de conceder ao aplicativo acesso à API de recurso, ele será executado como um serviço em segundo plano ou daemon sem um usuário conectado. As permissões de aplicativo também são conhecidas como funções de aplicativo.
No exemplo a seguir, você concede ao aplicativo Microsoft Graph (o principal de ID aaaaaaaa-bbbb-cccc-1111-222222222222
) uma função de aplicativo (permissão de aplicativo) com ID df021288-bdef-4463-88db-98f22de89214
, que é exposta por uma API de recurso com ID 11112222-bbbb-3333-cccc-4444dddd5555
.
Conecte-se ao Microsoft Graph PowerShell e entre como pelo menos um Administrador de Funções Com Privilégios.
Connect-MgGraph -Scopes "Application.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
Recupere as funções de aplicativo definidas pelo Microsoft Graph em seu locatário. Identifique a função de aplicativo que você precisa conceder ao aplicativo empresarial cliente. Neste exemplo, a ID da função de aplicativo é
df021288-bdef-4463-88db-98f22de89214
.Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" -Property AppRoles | Select -ExpandProperty appRoles |fl
Conceda permissão de aplicativo (função de aplicativo) ao aplicativo principal executando a solicitação a seguir.
$params = @{
"PrincipalId" ="aaaaaaaa-bbbb-cccc-1111-222222222222"
"ResourceId" = "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
"AppRoleId" = "df021288-bdef-4463-88db-98f22de89214"
}
New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId 'aaaaaaaa-bbbb-cccc-1111-222222222222' -BodyParameter $params |
Format-List Id, AppRoleId, CreatedDateTime, PrincipalDisplayName, PrincipalId, PrincipalType, ResourceDisplayName
Use o Explorador do Graph para conceder permissões delegadas e de aplicativo.
Fornecer consentimento de administrador para permissões delegadas usando a API do Microsoft Graph
Nesta seção, você concede permissões delegadas ao seu aplicativo. Permissões delegadas são permissões que seu aplicativo precisa para acessar uma API em nome de um usuário conectado. As permissões são definidas por uma API de recurso e concedidas ao seu aplicativo empresarial, que é o aplicativo cliente. Esse consentimento é fornecido em nome de todos os usuários.
Você precisa entrar como pelo menos um Administrador de Aplicativos na Nuvem.
No exemplo a seguir, a API de recurso é Microsoft Graph com o ID de objeto aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
. A API do Microsoft Graph define as permissões delegadas, User.Read.All
e Group.Read.All
. O consentType é AllPrincipals
, indicando que você está consentindo em nome de todos os usuários no locatário. A ID do objeto do aplicativo empresarial cliente é aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
.
Cuidado
Portanto, tenha cuidado! As permissões concedidas programaticamente não estão sujeitas a revisão nem confirmação. Elas entram em vigor imediatamente.
Recupere todas as permissões delegadas definidas pelo Microsoft Graph (o aplicativo de recurso) em seu aplicativo de locatário. Identifique as permissões delegadas que você precisa conceder ao aplicativo cliente. Neste exemplo, as permissões de delegação são
User.Read.All
eGroup.Read.All
GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq 'Microsoft Graph'&$select=id,displayName,appId,oauth2PermissionScopes
Conceda as permissões delegadas ao aplicativo empresarial cliente executando a solicitação a seguir.
POST https://graph.microsoft.com/v1.0/oauth2PermissionGrants Request body { "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444", "consentType": "AllPrincipals", "resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1", "scope": "User.Read.All Group.Read.All" }
Confirme se você concedeu consentimento de administrador em todo o locatário executando a solicitação a seguir.
GET https://graph.microsoft.com/v1.0/oauth2PermissionGrants?$filter=clientId eq '00001111-aaaa-2222-bbbb-3333cccc4444' and consentType eq 'AllPrincipals'
Conceder consentimento de administrador para permissões de aplicativo usando a API do Microsoft Graph
Nesta seção, você concede permissões de aplicativo para seu aplicativo empresarial. As permissões de aplicativo são permissões que seu aplicativo precisa para acessar uma API de recurso. As permissões são definidas pela API de recurso e concedidas ao seu aplicativo empresarial, que é o aplicativo principal. Depois de conceder ao aplicativo acesso à API de recurso, ele será executado como um serviço em segundo plano ou daemon sem um usuário conectado. As permissões de aplicativo também são conhecidas como funções de aplicativo.
No exemplo a seguir, você concede ao aplicativo Microsoft Graph (o principal com ID 00001111-aaaa-2222-bbbb-3333cccc4444
) uma função de aplicativo (permissão do aplicativo) com ID df021288-bdef-4463-88db-98f22de89214
, exposta por um aplicativo empresarial de recurso com ID 11112222-bbbb-3333-cccc-4444dddd5555
.
Você precisa assinar como pelo menos um Administrador de Funções Com Privilégios.
Recupere as funções de aplicativo definidas pelo Microsoft Graph em seu locatário. Identifique a função de aplicativo que você precisa conceder ao aplicativo empresarial cliente. Neste exemplo, a ID da função de aplicativo é
df021288-bdef-4463-88db-98f22de89214
GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq 'Microsoft Graph'&$select=id,displayName,appId,appRoles
Conceda permissão de aplicativo (função de aplicativo) ao aplicativo principal executando a solicitação a seguir.
POST https://graph.microsoft.com/v1.0/servicePrincipals/11112222-bbbb-3333-cccc-4444dddd5555/appRoleAssignedTo Request body { "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222", "resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1", "appRoleId": "df021288-bdef-4463-88db-98f22de89214" }