Gerir segredos para Funções do Azure em Azure Container Apps

Quando executa Funções do Azure em Azure Container Apps, trabalha com duas categorias de segredos:

Categoria Descrição Consumido por
Segredos ao nível da aplicação Valores de configuração que o seu código de função lê em tempo de execução, como ligações à base de dados, chaves API e credenciais de gatilho/vinculação. O teu código e as associações de tempo de execução das Funções.
Teclas de acesso às funções Tokens de autenticação (chaves de acesso) que protegem terminais de funções ativadas por HTTP, incluindo chaves mestre, host, função e sistema. Chamadas externas das suas funções HTTP (serviços, webhooks, programadores).

Estas duas categorias diferem na direção:

Segredos ao nível da aplicação Teclas de acesso às funções
Direção Outbound - a sua aplicação autentica-se noutros serviços Inbound - os chamadores autenticam-se na sua função
Quem detém o segredo A tua aplicação de funções O chamador (fornecedor de webhook, serviço, programador)
O que protege A que se liga a sua função Quem pode invocar o seu endpoint HTTP
Validado por O serviço-alvo O tempo de execução das Funções

Segredos ao nível da aplicação

Os segredos ao nível da aplicação são as credenciais que o seu código de função e os bindings precisam para se ligar a serviços externos. Pode armazená-los de duas formas:

Option Melhor para Rotação Auditoria Guide
Segredos de Aplicações de Contêiner Desenvolvimento/teste, cargas simples de trabalho de aplicação única Manual Apenas registos de atividade Segredos ao nível da aplicação Store
Referências ao Key Vault Produção, multiaplicativo, conformidade Automático (URI sem versão) Diagnóstico completo do Key Vault Segredos ao nível da aplicação Store

Sugestão

Comece com os segredos das Apps de Container para simplificar. Mude para referências do Key Vault quando precisar de gestão centralizada, rotação automática ou auditoria de nível de conformidade.

Teclas de acesso às funções

As chaves de acesso fornecem autenticação ligeira com segredo partilhado para pontos finais HTTP. Use chaves de acesso quando os chamadores não puderem apresentar tokens Microsoft Entra ID, como webhooks de terceiros, chamadas de serviço para serviço ou durante o desenvolvimento.

Defina a AzureWebJobsSecretStorageType variável de ambiente para escolher um backend de armazenamento:

Back-end Valor de configuração Melhor para Guide
Armazenamento secreto de Aplicações de Contentores containerapp A maioria das cargas de trabalho - sem dependências externas (Recomendado) Configurar chaves de host
Azure Key Vault keyvault Governação centralizada, auditoria de conformidade Configurar chaves de host
Armazenamento de Blobs do Azure blob Aplicações legadas ou dependência existente AzureWebJobsStorage Configurar chaves de host
Sistema de ficheiros local files Não recomendado nas aplicações Container - ver aviso N/A

Advertência

O Funções do Azure host coloca por defeito files (sistema de ficheiros local) quando AzureWebJobsSecretStorageType não está definido. No Azure Container Apps, o sistema de ficheiros é efémero. As chaves de host armazenadas com files são perdidas em cada reinício, evento de escala para zero ou implantação de revisão. Configure sempre um dos três backends de produção listados aqui.

Passos seguintes

Escolha o guia que corresponda ao tipo de segredo que precisa de gerir: