Gerenciamento de segredos para Azure Functions no Aplicativos de Contêiner do Azure

Ao executar Azure Functions em Aplicativos de Contêiner do Azure, você trabalha com duas categorias de segredos:

Categoria Descrição Consumido por
Segredos no nível do aplicativo Valores de configuração que seu código de função lê em tempo de execução, como cadeias de conexão de banco de dados, chaves de API e credenciais de gatilho/vinculação. Seu código e as associações de runtime do Functions.
Chaves de acesso do Functions Tokens de autenticação (chaves de acesso) que protegem pontos de extremidade de funções acionadas por HTTP, incluindo as chaves mestras, de host, de função e de sistema. Chamadores externos de suas funções HTTP (serviços, webhooks, desenvolvedores).

Essas duas categorias diferem na direção:

Segredos no nível do aplicativo Chaves de acesso do Functions
Direção Saída – sua função é autenticada em outros serviços Entrada – os chamadores se autenticam em sua função
Quem tem o segredo Seu aplicativo de funções O chamador (provedor de webhook, serviço, desenvolvedor)
O que ele protege Ao que sua função se conecta Quem pode invocar seu endpoint HTTP
Validado por O serviço de destino O tempo de execução do Functions

Segredos no nível do aplicativo

Os segredos no nível do aplicativo são as credenciais que seu código de função e as associações precisam para se conectar a serviços externos. Você pode armazená-los de duas maneiras:

Opção Mais adequado para Rotation Auditoria Guide
Segredos dos Aplicativos de Contêiner Desenvolvimento/teste, cargas de trabalho simples de aplicativo único Manual Somente logs de atividades Armazenar segredos no nível do aplicativo
Referências do Key Vault Produção, vários aplicativos, conformidade Automático (URI sem versão) Diagnóstico de Key Vault completo Armazenar segredos no nível do aplicativo

Dica

Comece com os segredos dos Container Apps para simplicidade. Use as referências do Key Vault quando precisar de gerenciamento centralizado, rotação automática ou auditoria com nível de conformidade.

Chaves de acesso do Functions

Chaves de acesso oferecem autenticação leve e eficiente de segredo compartilhado para endpoints HTTP. Use as chaves de acesso quando os chamadores não puderem apresentar tokens do Microsoft Entra ID, como webhooks de terceiros, chamadas de serviço a serviço ou durante o desenvolvimento.

Defina a AzureWebJobsSecretStorageType variável de ambiente para escolher um back-end de armazenamento:

Back-end Valor de configuração Mais adequado para Guide
Repositório secreto de Aplicativos de Contêiner containerapps Maioria das cargas de trabalho – sem dependências externas (recomendado) Configurar chaves de host
Azure Key Vault keyvault Governança centralizada, auditoria de conformidade Configurar chaves de host
Armazenamento de Blobs do Azure blob Aplicativos herdados ou dependência existente AzureWebJobsStorage Configurar chaves de host
Sistema de arquivos local files Não recomendado em Apps com Contêineres - consulte o aviso N/A

Tenha em mente essas considerações do backend:

  • O runtime não seleciona automaticamente o armazenamento secreto dos Apps de Contêineres. Se você não definir AzureWebJobsSecretStorageType ou definir como um valor não reconhecido, o host de Funções usa Armazenamento de Blobs quando AzureWebJobsStorage está disponível.
  • Mantenha AzureWebJobsStorage a configuração para verificações de saúde do armazenamento e recursos dependentes do armazenamento.
  • Não defina AzureWebJobsSecretStorageType como files. O sistema de arquivos Container Apps é efêmero, então as chaves armazenadas nesse backend são perdidas quando o app escala para zero, reinicia ou implanta uma nova revisão.

Próximas Etapas 

Escolha o guia que corresponde ao tipo de segredo que você precisa gerenciar: