Experiência de consentimento para aplicativos no Azure Active Directory

Neste artigo, você conhecerá a experiência do usuário de consentimento do aplicativo do Azure AD (Azure Active Directory). Em seguida, você pode gerenciar aplicativos para sua organização com inteligência e/ou desenvolver aplicativos com uma experiência de consentimento mais transparente.

Consentimento é o processo de um usuário conceder autorização a um aplicativo para acessar recursos protegidos em seu nome. Um administrador ou usuário pode ser solicitado consentimento para permitir o acesso aos seus dados da empresa/individuais.

A experiência do usuário real de dar consentimento varia de acordo com as políticas definidas no locatário do usuário, o escopo do usuário da autoridade (ou função) e o tipo de permissões que está sendo solicitado 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 configuração e desabilitar políticas em um locatário ou o aplicativo para controlar a experiência de consentimento em seu locatário. Os desenvolvedores de aplicativos podem determinar que tipos de permissões são solicitados e se querem orientar os usuários por meio do fluxo de consentimento do usuário ou do fluxo de consentimento do administrador.

  • 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 autorização de registro para apenas o usuário atual.
  • Fluxo de consentimento do administrador é quando um desenvolvedor de aplicativo direciona os usuários para o ponto de extremidade de autorização com a intenção registrar o consentimento para o locatário inteiro. Para garantir que o fluxo de consentimento do administrador funcione corretamente, os desenvolvedores de aplicativos devem listar todas as permissões na RequiredResourceAccess propriedade no manifesto do aplicativo. Para obter mais informações, veja Manifesto do aplicativo.

A solicitação de consentimento foi projetada para garantir que os usuários tenham informações suficientes para determinar se confiam que o aplicativo cliente para acessar recursos protegidos em seu nome. O reconhecimento sobre os blocos de construção ajudará os usuários, concedendo consentimento tomar decisões mais fundamentadas e ajudará 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 da solicitação de consentimento.

Blocos de construção do solicitação de consentimento

# Componente Finalidade
1 Identificador de usuário Esse identificador representa o que o aplicativo cliente está solicitando para acessar recursos protegidos em nome de usuário.
2 Título As alterações de título baseadas em se os usuários vão percorrer o fluxo de consentimento do usuário ou administrador. No fluxo de consentimento do usuário, o título será "Permissões solicitadas" enquanto o fluxo de consentimento do administrador o título terá uma linha adicional "Aceitar para sua organização".
3 Logotipo do aplicativo Essa imagem deve ajudar os usuários a terem uma indicação visual se este aplicativo for o aplicativo que se destinam a acessar. Essa imagem é fornecida por desenvolvedores de aplicativos e a propriedade dessa imagem não é validada.
4 Nome do aplicativo Esse valor deve informar qual aplicativo está solicitando acesso aos dados de usuários. Observe que esse nome é fornecido pelos desenvolvedores e a propriedade desse nome de aplicativo não é validada.
5 Nome do editor e verificação A notificação azul "verificada" significa que o editor do aplicativo verificou a própria identidade usando uma conta Microsoft Partner Network e concluiu o processo de verificação. Se o aplicativo for verificado pelo editor, o nome do publicador será exibido. Se o aplicativo não for verificado pelo editor, será exibido "Não verificado" 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 disponíveis, como nome do editor, domínio do editor, data de criação, detalhes da certificação e 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 fortes 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 editor 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 sempre devem avaliar os tipos de permissões que estão sendo solicitadas para entender quais dados o aplicativo cliente será autorizado a acessar em seu nome, se eles aceitarem. Como desenvolvedor de aplicativos, é melhor solicitar o acesso para as permissões com o privilégio mínimo.
9 Descrição da permissão Esse valor é fornecido pelo serviço expondo as permissões. Para ver as descrições de permissão, você deve ativar a divisa ao lado de permissão.
10 https://myapps.microsoft.com Este é o link em que os usuários podem examinar e remover todos os aplicativos que não são da Microsoft que atualmente possuem acesso aos seus dados.
11 Denuncie-o aqui Esse link é usado para denunciar um aplicativo suspeito em que você não confia, por acreditar que o aplicativo está se passando por outro aplicativo, que ele usará indevidamente 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 exige uma permissão que o usuário tem o direito de conceder

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

Os administradores verão um controle adicional sobre a solicitação de consentimento tradicional que forneça consentimento em nome do locatário inteiro. O controle será padronizado como desligado, isso somente quando os administradores verificarem explicitamente a caixa será concedido em nome do locatário inteiro. A caixa de seleção só mostrará a função Administrador Global, ou seja, o Administrador de Nuvem e o administrador do Aplicativo não verão essa caixa de seleção.

Solicitação de consentimento para o cenário 1a

Os usuários verão a solicitação de consentimento tradicional.

Captura de tela mostrando o prompt de consentimento tradicional.

O aplicativo exige uma permissão que o usuário não tem o direito de concessão

Neste cenário de consentimento, o usuário acessa um aplicativo que exige, no mínimo, uma permissão que está fora do escopo de autoridade do usuário.

Os administradores verão um controle adicional sobre a solicitação de consentimento tradicional que lhes permita consentimento em nome do locatário inteiro.

Solicitação de consentimento para o cenário 1a

Os usuários não administradores serão impedidos de conceder consentimento ao aplicativo e serão instruídos a solicitar ao administrador o acesso ao aplicativo. Se o fluxo de trabalho de consentimento do administrador estiver habilitado no locatário do usuário, os usuários não administradores poderão enviar uma solicitação de aprovação do administrador por meio da solicitação de consentimento. Para obter mais informações sobre o fluxo de trabalho de consentimento do administrador, confira Fluxo de trabalho de consentimento do administrador.

Captura de tela da solicitação de consentimento informando que o usuário deve pedir a um administrador para acessar o aplicativo.

Neste cenário de consentimento, o usuário acessa o fluxo de consentimento do administrador ou é direcionado para ele.

Os usuários do administrador verão a solicitação de consentimento tradicional. O título e as descrições de permissão alteradas na solicitação, o realce de alterações, o fato de que aceitar este solicitação concederá o aplicativo de acesso para os dados solicitados em nome do locatário inteiro.

Prompt de consentimento para o cenário 3a

Os usuários não administradores serão impedidos de conceder consentimento ao aplicativo e serão instruídos a solicitar ao administrador o acesso ao aplicativo.

Captura de tela da solicitação de consentimento informando que o usuário deve pedir a um administrador para acessar o aplicativo.

Neste 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 do locatário. O Administrador concede o consentimento por meio da página Permissões de API do registro de aplicativo no portal do Azure.

Captura de tela do consentimento explícito do administrador por meio do portal do Azure.

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 as permissões delegadas, consulte Permissões da função de administrador no Microsoft Azure Active Directory.

Importante

A concessão explícita de consentimento usando o botão Conceder permissões é necessária atualmente para SPAs (aplicativos de página única) que usam o 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

    • Este é um cenário delegado? Quais permissões um usuário tem?
    • As permissões necessárias foram adicionadas para uso do ponto de extremidade?
    • Verifique o token para ver se ele tem as declarações necessárias para chamar o ponto de extremidade.
    • Quais permissões foram consentidas? Quem as consentiu?
  • O usuário não pode fornecer o consentimento

    • Verifique se o administrador de locatários desabilitou o consentimento do usuário na sua organização
    • Confirme se as permissões solicitadas são permissões restritas ao administrador.
  • O usuário ainda está bloqueado mesmo após o consentimento do administrador

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

Solução de problemas de erros conhecidos

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

Próximas etapas