Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo ajuda-o, enquanto programador, a perceber como garantir melhor a Zero Trust ao adquirir permissões de acesso a recursos para a sua aplicação. Para aceder a recursos protegidos, como emails ou dados de calendário, a sua aplicação necessita da autorização do proprietário do recurso. O proprietário do recurso pode consentir ou negar o pedido da sua aplicação. A sua aplicação recebe um token de acesso quando o proprietário do recurso dá consentimento; A sua aplicação não recebe um token de acesso quando o proprietário do recurso nega o acesso.
Revisão conceptual
Pode usar a Microsoft Identity Platform para autenticar e autorizar as suas aplicações, bem como gerir permissões e consentimentos. Vamos começar com alguns conceitos:
A autenticação (por vezes abreviada para AuthN) é o processo de provar que a sua identidade alegada é correta. A plataforma de identidade Microsoft utiliza o protocolo OpenID Connect para gerir a autenticação. A autorização (por vezes abreviada para AuthZ) concede a uma parte autenticada permissão para fazer algo. Especifica a quais dados pode aceder a parte autenticada. A plataforma de identidade Microsoft utiliza o protocolo OAuth2.0 para gerir a autorização. As opções de autorização incluem listas de controlo de acesso (ACL), controlo de acesso baseado em funções e controlo de acesso por atributos (ABAC). A autenticação é frequentemente um fator de autorização.
O acesso delegado (atuando em nome de um utilizador iniciado) ou o acesso direto (atuando apenas como identidade própria da aplicação) permite que a sua aplicação aceda aos dados. O acesso delegado requer permissões delegadas (também conhecidas como escopos). O cliente e o utilizador devem estar autorizados separadamente para fazer o pedido. O acesso direto pode exigir permissões de aplicação (também conhecidas como papéis de aplicação). Quando as aplicações recebem funções de aplicação, podem ser chamadas de permissões de aplicação.
Permissões delegadas, usadas com acesso delegado, permitem que uma aplicação atue em nome de um utilizador, acedendo apenas ao que o utilizador pode acedecer. A permissão da aplicação, usada com acesso direto, permite a uma aplicação aceder a quaisquer dados com os quais a permissão esteja associada. Somente administradores e proprietários de entidades de serviço podem consentir em permissões de aplicativos.
Consentimento é a forma como as candidaturas recebem permissões. Utilizadores ou administradores autorizam uma aplicação a aceder a um recurso protegido. Um pedido de consentimento lista as permissões que a candidatura requer, juntamente com informações do editor.
A pré-autorização é a forma como os proprietários das aplicações de recursos concedem acesso às aplicações clientes. Podem fazê-lo no portal Azure ou com PowerShell e APIs como o Microsoft Graph. Podem conceder permissões de recursos sem exigir que os utilizadores vejam um pedido de consentimento para o conjunto de permissões pré-autorizadas .
Diferença entre permissão delegada e permissão de aplicação
As aplicações funcionam em dois modos: quando um utilizador está presente (permissão delegada) e quando não há utilizador (permissão de aplicação). Quando há um utilizador à frente de uma aplicação, és obrigado a agir em nome desse utilizador. Não deves agir em nome da própria candidatura. Quando um utilizador dirige a sua aplicação, está a agir como delegado desse utilizador. Está a receber permissão para agir em nome do utilizador que o token identifica.
Aplicações do tipo serviço (tarefas em segundo plano, daemons, processos servidor-para-servidor) não têm utilizadores que se identifiquem ou digitem uma palavra-passe. É necessário um pedido de permissão para agir em nome próprio (em nome do pedido de serviço).
Melhores práticas de autorização de aplicações Zero Trust
A sua abordagem de autorização inclui a autenticação como componente quando se conecta a um utilizador presente na aplicação e ao recurso que está a aceder. Quando a sua aplicação atua em nome de um utilizador, não confiamos numa aplicação que nos chama para nos dizer quem é o utilizador ou deixar que a aplicação decida quem é. O Microsoft Entra ID verifica e fornece diretamente informações sobre o utilizador no token.
Quando precisa de permitir que a sua aplicação chame uma API ou autorize a sua aplicação para que esta possa aceder a um recurso, os esquemas modernos de autorização podem exigir autorização através de um quadro de permissões e consentimento. Consulte as melhores práticas de segurança para propriedades da aplicação que incluem URI de redirecionamento, tokens de acesso (usados para fluxos implícitos), certificados e segredos, URI do ID da aplicação e propriedade da aplicação.
Próximos passos
- Personalizar tokens descreve as informações que se pode receber nos tokens do Microsoft Entra. Ele explica como personalizar tokens para melhorar a flexibilidade e o controle e, ao mesmo tempo, aumentar a segurança do aplicativo Zero Trust com o menor privilégio.
- Configurar declarações de grupo e funções de aplicativo em tokens mostra como configurar seus aplicativos com definições de função de aplicativo e atribuir grupos de segurança a funções de aplicativo. Esses métodos ajudam a melhorar a flexibilidade e o controle e, ao mesmo tempo, aumentam a segurança do aplicativo Zero Trust com o menor privilégio.
- Desenvolver a estratégia de permissões delegadas ajuda você a implementar a melhor abordagem para gerenciar permissões em seu aplicativo e desenvolver com princípios de Confiança Zero.
- Desenvolver a estratégia de permissões de aplicativo ajuda você a decidir sobre a abordagem de permissões de aplicativo para o gerenciamento de credenciais.
- Forneça credenciais de identidade de aplicação quando não há utilizador que explique porque é que Identidades Geridas para recursos Azure é a melhor prática de credenciais de cliente para serviços (aplicações não utilizadoras) no Azure.
- As práticas recomendadas de autorização ajudam você a implementar os melhores modelos de autorização, permissão e consentimento para seus aplicativos.
- Use as práticas recomendadas de desenvolvimento de gerenciamento de acesso e identidade Zero Trust em seu ciclo de vida de desenvolvimento de aplicativos para criar aplicativos seguros.
- Construir aplicações com uma abordagem Zero Trust à identidade continua a partir do artigo sobre boas práticas de desenvolvimento de gestão de acesso e identidade Zero Trust para o ajudar a usar uma abordagem Zero Trust à identidade no seu ciclo de vida de desenvolvimento de software (SDLC).