Configurar a identidade gerenciada para funções do Azure envolve o uso de identidade gerenciada designada pelo sistema ou identidade gerenciada designada pelo usuário. Veja como você pode configurar os dois tipos:
Ativa a identidade gerenciada atribuída
1. Navegue até o portal do Azure: vá para o seu aplicativo de função do Azure no portal do Azure.
2. Selecione a opção de identidade: no menu esquerda, selecione Configurações e clique em Identity.
3. Ativar identidade atribuída ao sistema: Na guia atribuída pelo sistema, alterne o status e clique em Salvar. Isso cria uma identidade gerenciada com o mesmo nome do seu aplicativo de função.
4. Atribua permissões: navegue para o recurso (por exemplo, armazenamento do Azure ou banco de dados SQL) que você deseja que sua função acesse. Atribua as funções apropriadas à identidade gerenciada, acessando o controle de controle (IAM), depois as atribuições de função e adicionando a identidade gerenciada às funções necessárias [1] [3] [7].
ativando a identidade gerenciada atribuída ao usuário
1. Crie uma identidade atribuída ao usuário: primeiro, crie um recurso de identidade gerenciado atribuído pelo usuário no Azure. Essa identidade pode ser usada em vários recursos.
2. Atribua ao App à função: No portal do Azure, navegue até as configurações de identidade do aplicativo de função. Alterne para a guia atribuída ao usuário e clique em Adicionar. Pesquise e selecione a identidade atribuída pelo usuário que você criou [1] [6].
3. Definir configurações de aplicativos: Para determinados serviços como o Key Vault, pode ser necessário definir propriedades adicionais (por exemplo, `ketaultreferenceleference ') via Chamadas de API Rest, pois essas configurações não estão disponíveis na interface do usuário [1].
4. Atribua permissões: semelhante às identidades atribuídas ao sistema, atribua as funções necessárias à identidade atribuída ao usuário para os recursos de destino [6].
Usando a identidade gerenciada no código
Ao usar identidades gerenciadas, suas funções do Azure podem aproveitar bibliotecas como `Azure.Identity` para se autenticar com os serviços do Azure sem lidar diretamente com os segredos. Por exemplo, você pode usar o `DefaultAzureCredential` para conectar -se ao armazenamento do Azure ou ao banco de dados SQL [5] [9].
benefícios de identidades gerenciadas
- Segurança: evita a necessidade de armazenar segredos nos arquivos de código ou configuração.
- Flexibilidade: permite fácil gerenciamento de permissões de acesso via Azure RBAC.
-Escalabilidade: suporta identidades atribuídas ao sistema e atribuídas ao usuário para diferentes cenários [4] [6].
Citações:
[1] https://www.red-gate.com/simple-talk/cloud/azure/azure-function-and-user-signigned-anaged-identities/
[2] https://codebankblog.wordpress.com/2020/06/27/azure-function-with-managed-identity-and-azure-sql-db/
[3] https://kumarashwinhubert.com/secure-your-azure-functions-use-managed-entity-for-azurewebjobsStorage
[4] https://docs.azure.cn/en-us/azure-functions/functions-entity baseado em conexão com base em tutorial
[5] https://www.linkedin.com/pulse/how-use-managed-identities-app-service-azure-ali-khan-
[6] https://learn.microsoft.com/en-us/azure/app-service/overview-managed-identity
[7] https://docs.azure.cn/en-us/azure-functions/functions-identity-access-azure-sql-with-managed-entity
[8] https://learn.microsoft.com/en-us/azure/azure-functions/durable/Durable-functions-configure-managed-entity
[9] https://www.transparity.com/app-innovation/azure-functions-with-managed-identity-storage-access/