Experiência de consentimento para aplicativos no Microsoft Entra ID

Neste artigo, saiba mais sobre a experiência do usuário de consentimento do aplicativo Microsoft Entra. Você pode gerenciar aplicativos de forma inteligente para sua organização e/ou desenvolver aplicativos com uma experiência de consentimento mais perfeita.

Consentimento é o processo pelo qual um usuário concede autorização a um aplicativo para acessar recursos protegidos em seu nome. Pode ser solicitado consentimento a um administrador ou utilizador para permitir o acesso aos seus dados organizacionais/individuais.

A experiência real do usuário de conceder consentimento difere dependendo das políticas definidas no locatário do usuário, do escopo de autoridade (ou função) do usuário e do tipo de permissões solicitadas pelo aplicativo cliente. Isso significa que os desenvolvedores de aplicativos e administradores de locatários têm algum controle sobre a experiência de consentimento. Os administradores têm a flexibilidade de definir e desativar políticas num inquilino ou aplicação para controlar a experiência de consentimento no inquilino. Os programadores de aplicações podem ditar que tipos de permissões estão a ser pedidos e se querem orientar os utilizadores através do fluxo de consentimento do utilizador ou do fluxo de consentimento do administrador.

  • O fluxo de consentimento do usuário é quando um desenvolvedor de aplicativo direciona os usuários para o ponto de extremidade de autorização com a intenção de registrar o consentimento apenas para o usuário atual.
  • O fluxo de consentimento do administrador é quando um desenvolvedor de aplicativos direciona os usuários para o ponto de extremidade de consentimento do administrador com a intenção de registrar o consentimento para todo o locatário. Para garantir que o fluxo de consentimento do administrador funcione corretamente, os RequiredResourceAccess desenvolvedores de aplicativos devem listar todas as permissões na propriedade no manifesto do aplicativo. Para saber mais, veja Manifesto do aplicativo.

O prompt de consentimento foi projetado para garantir que os usuários tenham informações suficientes para determinar se confiam no aplicativo cliente para acessar recursos protegidos em seu nome. Compreender os blocos de construção ajuda os usuários que concedem consentimento a tomar decisões mais informadas e ajuda os desenvolvedores a criar melhores experiências de usuário.

O diagrama e a tabela a seguir fornecem informações sobre os blocos de construção do prompt de consentimento.

Blocos de construção do prompt de consentimento

# Componente Propósito
1 Identificador de utilizador Esse identificador representa o usuário que o aplicativo cliente está solicitando para acessar recursos protegidos em nome de.
2 Título O título muda com base no fato de os usuários estarem passando pelo fluxo de consentimento do usuário ou do administrador. No fluxo de consentimento do usuário, o título é "Permissões solicitadas", enquanto no fluxo de consentimento do administrador o título tem outra linha "Aceitar para sua organização".
3 Logótipo da aplicação Esta imagem deve ajudar os usuários a ter uma pista visual de se este aplicativo é o aplicativo que eles pretendiam acessar. Esta imagem é fornecida por desenvolvedores de aplicativos e a propriedade desta imagem não é validada.
4 Nome da aplicação Este valor deve informar os utilizadores qual a aplicação que está a solicitar o acesso aos seus dados. Observe que esse nome é fornecido pelos desenvolvedores e a propriedade desse nome de aplicativo não é validada.
5 Nome e verificação do editor O selo azul "verificado" significa que o editor do aplicativo verificou sua identidade usando uma conta do Microsoft Partner Network e concluiu o processo de verificação. Se o aplicativo for verificado pelo editor, o nome do editor será exibido. Se o aplicativo não for verificado pelo editor, "Não verificado" será exibido em vez do nome do editor. Para obter mais informações, leia sobre a Verificação do Editor. A seleção do nome do editor exibe mais informações do aplicativo conforme disponíveis, como o nome do editor, o domínio do editor, a data de criação, os detalhes da certificação e as URLs de resposta.
6 Certificação Microsoft 365 O logotipo da Certificação Microsoft 365 significa que um aplicativo foi examinado em relação a controles derivados das principais estruturas padrão do setor e que práticas sólidas de segurança e conformidade estão em vigor para proteger os dados do cliente. Para obter mais informações, leia sobre a Certificação Microsoft 365.
7 Informações do Publicador Exibe se o aplicativo é publicado pela Microsoft.
8 Permissões Esta lista contém as permissões que estão sendo solicitadas pelo aplicativo cliente. Os usuários devem sempre avaliar os tipos de permissões que estão sendo solicitados para entender quais dados o aplicativo cliente será autorizado a acessar em seu nome, se aceitar. Como desenvolvedor de aplicativos, é melhor solicitar acesso às permissões com o menor privilégio.
9 Descrição da permissão Esse valor é fornecido pelo serviço que expõe as permissões. Para ver as descrições da permissão, você deve alternar a divisa ao lado da permissão.
10 https://myapps.microsoft.com Este é o link onde os usuários podem revisar e remover quaisquer aplicativos que não sejam da Microsoft que atualmente tenham acesso aos seus dados.
11 Denuncie aqui Este link é usado para denunciar um aplicativo suspeito se você não confiar no aplicativo, se acreditar que o aplicativo está se passando por outro aplicativo, se você acredita que o aplicativo fará uso indevido de seus dados ou por algum outro motivo.

A seção a seguir descreve os cenários comuns e a experiência de consentimento esperada para cada um deles.

O aplicativo requer uma permissão que o usuário tem o direito de conceder

Nesse cenário de consentimento, o usuário acessa um aplicativo que requer um conjunto de permissões que está dentro do escopo de autoridade do usuário. O usuário é direcionado para o fluxo de consentimento do usuário.

Os administradores veem outro controle no prompt de consentimento tradicional que permitirá dar consentimento em nome de todo o locatário. O controle é desativado por padrão, portanto, somente quando os administradores marcarem explicitamente a caixa o consentimento será concedido em nome de todo o locatário. A caixa de seleção só será exibida pelo menos para a função de Administrador de Função Privilegiada, portanto, o Administrador de Nuvem e o Administrador de Aplicativo não verão essa caixa de seleção.

Prompt de consentimento para o cenário 1a

Os usuários veem o prompt de consentimento tradicional.

Captura de tela que mostra o prompt de consentimento tradicional.

O aplicativo requer uma permissão que o usuário não tem o direito de conceder

Nesse cenário de consentimento, o usuário acessa um aplicativo que requer pelo menos uma permissão que está fora do escopo de autoridade do usuário.

Os administradores veem outro controle no prompt de consentimento tradicional que lhes permitirá o consentimento em nome de todo o locatário.

Prompt de consentimento para o cenário 1a

Os usuários que não são administradores são impedidos de dar consentimento ao aplicativo e são instruídos a pedir ao administrador acesso ao aplicativo. Se o fluxo de trabalho de consentimento do administrador estiver habilitado no locatário do usuário, os usuários poderão enviar uma solicitação de aprovação do administrador a partir do prompt de consentimento. Para obter mais informações sobre o fluxo de trabalho de consentimento de administrador, consulte Fluxo de trabalho de consentimento de administrador.

Captura de tela do prompt de consentimento informando ao usuário para solicitar a um administrador acesso ao aplicativo.

Nesse cenário de consentimento, o usuário navega ou é direcionado para o fluxo de consentimento de administrador.

Os usuários administradores veem o prompt de consentimento de administrador. O título e as descrições de permissão foram alteradas nesse prompt, as alterações destacam o fato de que aceitar esse prompt concederá ao aplicativo acesso aos dados solicitados em nome de todo o locatário.

Prompt de consentimento para o cenário 3a

Os usuários são impedidos de dar consentimento ao aplicativo e são instruídos a pedir ao administrador acesso ao aplicativo.

Captura de tela do prompt de consentimento informando ao usuário para solicitar a um administrador acesso ao aplicativo.

Nesse cenário, um administrador consente com todas as permissões que um aplicativo solicita, que podem incluir permissões delegadas em nome de todos os usuários no locatário. O administrador concede consentimento por meio da página de permissões da API do registro do aplicativo no centro de administração do Microsoft Entra.

Captura de ecrã do consentimento explícito do administrador através do centro de administração do Microsoft Entra.

Todos os usuários desse locatário não verão a caixa de diálogo de consentimento, a menos que o aplicativo exija novas permissões. Para saber quais funções de administrador podem consentir com permissões delegadas, consulte Permissões de função de administrador na ID do Microsoft Entra.

Importante

A concessão de consentimento explícito usando o botão Conceder permissões é atualmente necessária para aplicativos de página única (SPA) que usam MSAL.js. Caso contrário, o aplicativo falhará quando o token de acesso for solicitado.

Problemas Comuns

Esta seção descreve os problemas comuns com a experiência de consentimento e possíveis dicas de solução de problemas.

  • Erro 403

    • Trata-se de um cenário delegado? Que permissões tem um utilizador?
    • As permissões necessárias são adicionadas para usar o ponto de extremidade?
    • Verifique o token para ver se ele tem declarações necessárias para chamar o ponto de extremidade.
    • Que permissões foram consentidas? Quem consentiu?
  • O usuário não pode consentir

    • Verificar se o administrador do locatário desabilitou o consentimento do usuário para sua organização
    • Confirme se as permissões solicitadas são permissões restritas por administrador.
  • O utilizador ainda está bloqueado mesmo depois de o administrador ter consentido

    • Verifique se as permissões estáticas estão configuradas para ser um superconjunto de permissões solicitadas dinamicamente.
    • Verifique se a atribuição de usuário é necessária para o aplicativo.

Solucionar erros conhecidos

Para conhecer as etapas de solução de problemas, consulte Erro inesperado ao executar o consentimento para um aplicativo.

Consulte também