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 guia de início rápido mostra como centralizar e gerenciar as configurações do aplicativo Azure Functions fora do seu código usando a Configuração do Aplicativo do Azure. Com a integração do provedor de configuração .NET, você pode adicionar a Configuração do Aplicativo como uma fonte de configuração extra com apenas algumas alterações de código simples.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Crie um gratuitamente.
- Uma loja de configuração de aplicativos, conforme mostrado no tutorial para criar uma loja.
- Visual Studio com a carga de trabalho de desenvolvimento do Azure.
- Ferramentas do Azure Functions.
Adicionar um valor-chave
Adicione o seguinte valor-chave à loja de Configuração de Aplicativos e deixe Rótulo e Tipo de Conteúdo com seus valores padrão. Para obter mais informações sobre como adicionar valores-chave a uma loja usando o portal do Azure ou a CLI, vá para Criar um valor-chave.
| Chave | valor |
|---|---|
| TestApp:Configurações:Mensagem | Dados da Configuração do Aplicativo do Azure |
Criar um aplicativo de função
Crie um aplicativo do Azure Functions usando o Visual Studio selecionando o modelo do Azure Functions (C# ). Este modelo orienta você na definição de configurações essenciais para seu projeto. Para obter instruções detalhadas, consulte Desenvolver funções do Azure usando o Visual Studio.
Use a tabela a seguir como referência para parâmetros-chave ao criar seu aplicativo de função.
| Configuração | valor |
|---|---|
| Trabalhador de funções | .NET 8.0 em implementação isolada |
| Função | Acionador HTTP |
| Nível de autorização | Anônimo |
Nota
A Configuração de Aplicativo do Azure pode ser usada com o Azure Functions no modelo de trabalho isolado ou no modelo em processo. Este guia de início rápido usa o modelo de trabalhador isolado como exemplo. Você pode encontrar exemplos de código completos para ambos os modelos no repositório GitHub de Configuração de Aplicativo do Azure.
Conectar-se a uma loja de configuração de aplicativos
Você pode se conectar à sua loja de Configuração de Aplicativos usando a ID do Microsoft Entra (recomendado) ou uma cadeia de conexão.
Clique com o botão direito do mouse em seu projeto e selecione Gerenciar pacotes NuGet. Na guia Procurar , procure e adicione a versão estável mais recente dos seguintes pacotes NuGet ao seu projeto.
- Microsoft.Azure.AppConfiguration.Functions.Worker
- Azure.Identity
Abra Program.cs e atualize o código da seguinte maneira. Você adiciona a Configuração do Aplicativo do Azure como uma fonte de configuração adicional chamando o
AddAzureAppConfigurationmétodo.Você usa o
DefaultAzureCredentialpara autenticar na sua loja de configuração de aplicativos. Siga as instruções para atribuir à sua credencial a função de Leitor de Dados de Configuração do Aplicativo. Certifique-se de dar tempo suficiente para que a permissão se propague antes de executar seu aplicativo.using Azure.Identity; using Microsoft.Azure.Functions.Worker.Builder; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Hosting; var builder = FunctionsApplication.CreateBuilder(args); // Connect to Azure App Configuration builder.Configuration.AddAzureAppConfiguration(options => { Uri endpoint = new(Environment.GetEnvironmentVariable("AZURE_APPCONFIG_ENDPOINT") ?? throw new InvalidOperationException("The environment variable 'AZURE_APPCONFIG_ENDPOINT' is not set or is empty.")); options.Connect(endpoint, new DefaultAzureCredential()) // Load all keys that start with `TestApp:` and have no label .Select("TestApp:*"); });Abra Function1.cs e adicione o namespace a seguir.
using Microsoft.Extensions.Configuration;Atualize o construtor para obter uma instância de
IConfigurationatravés de injeção de dependência.private readonly IConfiguration _configuration; private readonly ILogger<Function1> _logger; public Function1(IConfiguration configuration, ILogger<Function1> logger) { _configuration = configuration; _logger = logger; }Atualize o
Runmétodo para ler valores da configuração.[Function("Function1")] public IActionResult Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequest req) { _logger.LogInformation("C# HTTP trigger function processed a request."); // Read configuration data string key = "TestApp:Settings:Message"; string? message = _configuration[key]; return new OkObjectResult(message ?? $"Please create a key-value with the key '{key}' in Azure App Configuration."); }
Testar localmente a função
Defina a variável de ambiente .
Defina a variável de ambiente chamada AZURE_APPCONFIG_ENDPOINT para o ponto de extremidade da sua loja de Configuração de Aplicativos encontrado em Visão geral da sua loja no portal do Azure.
Se você usar o prompt de comando do Windows, execute o seguinte comando e reinicie o prompt de comando para permitir que a alteração entre em vigor:
setx AZURE_APPCONFIG_ENDPOINT "<endpoint-of-your-app-configuration-store>"Se você usar o PowerShell, execute o seguinte comando:
$Env:AZURE_APPCONFIG_ENDPOINT = "<endpoint-of-your-app-configuration-store>"Se você usa macOS ou Linux, execute o seguinte comando:
export AZURE_APPCONFIG_ENDPOINT='<endpoint-of-your-app-configuration-store>'Pressione F5 para testar sua função. Se solicitado, aceite a solicitação do Visual Studio para baixar e instalar as ferramentas CLI (Azure Functions Core). Também pode ser necessário habilitar uma exceção de firewall para que as ferramentas possam lidar com solicitações HTTP.
Copie o URL da sua função na saída do tempo de execução das funções do Azure.
Cole o URL do pedido HTTP na barra de endereço do browser. A imagem a seguir mostra a resposta no navegador para a solicitação GET local retornada pela função.
Gerencie parâmetros de gatilho com referências de Configuração de Aplicativo
Os gatilhos do Azure Functions definem como uma função é invocada. Os atributos de gatilho, como nomes de fila ou nomes de banco de dados, são carregados no momento da inicialização do host e não podem recuperar valores diretamente da Configuração do Aplicativo do Azure. Para gerenciar esses parâmetros, você pode usar o recurso de referência Configuração do Aplicativo disponível para o Azure Functions e o Serviço de Aplicativo.
O recurso de referência de Configuração do Aplicativo permite que você faça referência a valores-chave armazenados na Configuração do Aplicativo do Azure diretamente das configurações do seu aplicativo. O Azure Functions resolve essas referências na inicialização, permitindo que você gerencie parâmetros de gatilho de forma centralizada e segura.
Por exemplo, considere uma aplicação de funções acionada por fila. Em vez de especificar o nome da fila diretamente no atributo trigger, você pode fazer referência a um valor-chave armazenado na Configuração do Aplicativo do Azure.
Na sua loja de Configuração de Aplicações do Azure, adicione um valor-chave para o nome da fila:
Chave valor TestApp:Armazenamento:QueueName <O nome da fila na sua conta de armazenamento> No seu aplicativo Função, selecione Configurações ->Variáveis de ambiente ->Configurações do aplicativo no portal do Azure e crie uma configuração de aplicativo que faça referência à chave Configuração do Aplicativo:
Nome valor MyQueueName @Microsoft.AppConfiguration(Endpoint=<your-store-endpoint>; Key=TestApp:Storage:QueueName)Sugestão
Se você tiver vários valores de chave na Configuração do Aplicativo do Azure, poderá exportá-los em lote como referências de Configuração do Aplicativo para o Azure Functions usando o portal do Azure ou a CLI.
Habilite a identidade gerenciada para seu aplicativo Azure Functions e atribua-lhe a função Leitor de Dados de Configuração do Aplicativo para sua loja de Configuração de Aplicativos. Para obter instruções detalhadas sobre como configurar referências de Configuração de Aplicativo, consulte Usar referências de Configuração de Aplicativo no Serviço de Aplicativo e no Azure Functions.
Atualize sua função acionada por fila para usar a configuração do aplicativo:
[Function("QueueTriggeredFunction")] public void Run([QueueTrigger(queueName: "%MyQueueName%")] QueueMessage message) { _logger.LogInformation($"C# Queue trigger function processed: {message.MessageText}"); }No tempo de execução, o Azure Functions resolve o marcador de posição
%MyQueueName%para o valor armazenado na Configuração de Aplicativos do Azure, permitindo que você gere os parâmetros de gatilho centralmente sem os codificar no seu código de função.
Clean up resources (Limpar recursos)
Se não quiser continuar a utilizar os recursos criados neste artigo, elimine o grupo de recursos que criou aqui para evitar cobranças.
Importante
A eliminação de um grupo de recursos é irreversível. O grupo de recursos e todos os recursos nele contidos são excluídos permanentemente. Certifique-se de não excluir acidentalmente o grupo de recursos ou recursos errados. Se você criou os recursos para este artigo dentro de um grupo de recursos que contém outros recursos que deseja manter, exclua cada recurso individualmente de seu respetivo painel em vez de excluir o grupo de recursos.
- Entre no portal do Azure e selecione Grupos de recursos.
- Na caixa Filtrar por nome, introduza o nome do seu grupo de recursos.
- Na lista de resultados, selecione o nome do grupo de recursos para ver uma visão geral.
- Selecione Eliminar grupo de recursos.
- É-lhe pedido que confirme a eliminação do grupo de recursos. Insira o nome do grupo de recursos a ser confirmado e selecione Excluir.
Após alguns momentos, o grupo de recursos e todos os seus recursos são excluídos.
Próximos passos
Neste início rápido, você integrou a Configuração do Aplicativo do Azure com um aplicativo do Azure Functions. Para saber como habilitar seu aplicativo Function para atualizar dinamicamente as definições de configuração, continue para o próximo tutorial.
Para saber como usar sinalizadores de recursos da Configuração de Aplicativo do Azure em seu aplicativo Azure Functions, prossiga para o tutorial a seguir.
Para saber como usar uma identidade gerenciada do Azure para simplificar o acesso à Configuração do Aplicativo, continue para o tutorial a seguir.