Fornecendo credenciais de identidade de aplicativo quando não há usuário
Quando você, como desenvolvedor, está criando aplicativos que não são de usuário, não tem um usuário a quem possa solicitar um nome de usuário e senha ou MFA (Multifactor Authentication). Você precisa fornecer a identidade do aplicativo por conta própria. Este artigo explica por que a melhor prática de credenciais de cliente de Confiança Zero para serviços (aplicativos que são não de usuários) no Azure é Identidades gerenciadas para recursos do Azure.
Problemas com contas de serviço
Usar uma "conta de serviço" (criar uma conta de usuário e usá-la para um serviço) não é uma boa solução. O Microsoft Entra ID não tem um conceito de conta de serviço. Quando os administradores criam contas de usuário para um serviço e, em seguida, compartilham senhas com desenvolvedores, isso é inseguro. Ele não pode ser sem senha ou ter um MFA. Em vez de utilizar uma conta de usuário como uma conta de serviço, sua melhor solução é utilizar uma das opções de credenciais de cliente descritas abaixo.
Opções de credenciais do cliente
Há quatro tipos de credenciais de cliente que podem identificar um aplicativo.
- Chave secreta
- Certificado
- Identidades gerenciadas para recursos do Azure
- Credenciais federadas
Chave secreta ou certificado?
Chaves secretas são aceitáveis quando você tem uma infraestrutura sofisticada de gerenciamento de segredos (como o Azure Key Vault) na empresa. No entanto, chaves secretas em cenários em que o profissional de TI gera uma chave secreta e, em seguida, envia-a por e-mail para um desenvolvedor que, em seguida, pode armazená-la em um local inseguro, como uma planilha, faz com que as chaves secretas não sejam protegidas adequadamente.
Credenciais do cliente baseadas em certificados são mais seguras do que chaves secretas. Os certificados são melhor gerenciados, pois não são o segredo em si. O segredo não faz parte de uma transmissão. Quando você utiliza uma chave secreta, seu cliente envia o valor real da chave secreta para o Microsoft Entra ID. Quando você utiliza um certificado, a chave privada do certificado nunca sai do dispositivo. Mesmo que alguém intercepte, decodifice e descriptografe a transmissão, o segredo ainda é seguro porque a parte interceptadora não tem a chave privada.
Melhor prática: usar identidades gerenciadas para recursos do Azure
Quando você está desenvolvendo serviços (aplicativos que são não de usuários) no Azure, o recurso Identidades gerenciadas para recursos do Azure fornece uma identidade gerenciada automaticamente no Microsoft Entra ID. Você pode usar a identidade para autenticar em qualquer serviço que ofereça suporte à autenticação do Microsoft Entra sem nenhuma credencial no seu código. Você não precisa gerenciar segredos; você não precisa lidar com a possibilidade de perdê-los ou manipulá-los indevidamente. Os segredos não podem ser interceptados porque eles não se movem pela rede. O recurso Identidades gerenciadas para recursos do Azure é a melhor prática se você está criando serviços no Azure.
Próximas etapas
- O artigo Tipos de identidade e conta com suporte para aplicativos de locatário único e multilocatário explica como escolher se o aplicativo permite apenas usuários de seu locatário do Microsoft Entra, qualquer locatário do Microsoft Entra ou usuários com contas pessoais da Microsoft.
- O artigo Desenvolver uma estratégia de permissões de aplicativo ajuda você a decidir sobre uma abordagem de permissões de aplicativos para o gerenciamento de credenciais.
- O artigo Fornecer credenciais de identidade de aplicativo quando não há usuário explica por que a melhor prática de credenciais de clientes com Confiança Zero para serviços (aplicativos que não são de usuário) no Azure é usar Identidades Gerenciadas para recursos do Azure.
- O artigo Práticas recomendadas de autorização ajuda você a implementar os melhores modelos de autorização, permissão e consentimento para aplicativos.
- Utilize as práticas recomendadas de desenvolvimento de gerenciamento de identidades e acesso com Confiança Zero no seu ciclo de vida de desenvolvimento de aplicativos para criar aplicativos seguros.
- O artigo Criar aplicativos com uma abordagem de identidade de Confiança Zero fornece uma visão geral das permissões e das práticas recomendadas de acesso.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de