Como usar uma conta de armazenamento segura com o Azure Functions

Este artigo mostra como conectar o seu aplicativo de funções a uma conta de armazenamento segura. Para obter um tutorial detalhado sobre como criar o seu aplicativo de funções com restrições de acesso de entrada e saída, confira o tutorial Integrar com uma rede virtual. Para saber mais sobre o Azure Functions e a rede, veja Opções de rede do Azure Functions.

Restringir a sua conta de armazenamento a uma rede virtual

Ao criar um aplicativo de funções, você cria uma nova conta de armazenamento ou vincula a uma existente. Atualmente, somente as implantações de modelo do ARM e do Bicep dão suporte à criação de aplicativos de funções com uma conta de armazenamento protegida existente.

Observação

A proteção da sua conta de armazenamento é suportada em todos os níveis de ambos os planos, Dedicado (Serviço de Aplicativo) e Premium Elástico. Atualmente, os planos de consumo não dão suporte a redes virtuais.

Para obter uma lista de todas as restrições em contas de armazenamento, confira Requisitos da conta de armazenamento.

Armazenamento seguro durante a criação do aplicativo de funções

Você pode criar um aplicativo de funções junto com uma nova conta de armazenamento segura por trás de uma rede virtual acessível por meio de pontos de extremidade privados. Os links a seguir mostram como criar esses recursos usando o portal do Azure ou usando modelos de implantação:

Para criar um novo aplicativo de funções com uma conta de armazenamento protegida, siga o tutorial abaixo: Usar pontos de extremidade privados para integrar o Azure Functions a uma rede virtual.

Armazenamento seguro para um aplicativo de funções existente

Quando você tem um aplicativo de funções existente, você não pode proteger diretamente a conta de armazenamento que está sendo usada pelo aplicativo. O que você precisa fazer é trocar a conta de armazenamento existente por uma nova conta de armazenamento protegida.

1. Habilitar a integração de rede virtual

Como pré-requisito, você precisa habilitar a integração de rede virtual para o seu aplicativo de funções.

  1. Escolha um aplicativo de funções com uma conta de armazenamento que não tenha pontos de extremidade de serviço ou pontos de extremidade privados habilitados.

  2. Habilite a integração da rede virtual para o seu aplicativo.

2. Criar uma conta de armazenamento segura

Configure uma conta de armazenamento segura para o seu aplicativo de funções:

  1. Crie uma segunda conta de armazenamento. Essa será a conta de armazenamento segura que o seu aplicativo de funções usará em vez disso. Você também pode usar uma conta de armazenamento existente que ainda não está sendo usada pelo Functions.

  2. Copie a cadeia de conexão para a conta de armazenamento. Você precisará desta cadeia de caracteres mais tarde.

  3. Crie um compartilhamento de arquivos na conta de armazenamento nova. Tente usar o mesmo nome que o compartilhamento de arquivos na conta de armazenamento existente. Caso contrário, você precisará copiar o nome do novo compartilhamento de arquivos para definir uma configuração de aplicativo posteriormente.

  4. Proteja a nova conta de armazenamento de uma das seguintes maneiras:

    • Crie um ponto de extremidade privado. Ao configurar conexões de ponto de extremidade privado, crie pontos de extremidade privados para os sub-recursos file e blob. No caso do Durable Functions, você também precisa tornar os sub-recursos queue e table acessíveis por meio de pontos de extremidade privados. Se você estiver usando um servidor DNS personalizado ou local, certifique-se de configurar o servidor DNS para resolver para os novos pontos de extremidade privados.

    • Restrinja o tráfego a sub-redes específicas. Certifique-se de que uma das sub-redes permitidas seja aquela com a qual seu aplicativo de funções está integrado à rede. Garanta que a sub-rede tenha um ponto de extremidade de serviço para Microsoft.Storage.

  5. Copie o conteúdo do arquivo e do blob da conta de armazenamento usada atualmente pelo aplicativo de funções para a conta de armazenamento protegida e o compartilhamento de arquivos que você acabou de criar. O AzCopy e o Gerenciador de Armazenamento do Microsoft Azure são métodos comuns. Se você usar o Gerenciador de Armazenamento do Microsoft Azure, talvez seja necessário permitir que o endereço IP do cliente entre no firewall da sua conta de armazenamento.

Agora você está pronto para configurar o seu aplicativo de funções para se comunicar com a conta de armazenamento recém-protegida.

3. Habilitar o roteamento de aplicativos e configurações

Agora você deve rotear o tráfego do aplicativo de funções para percorrer a rede virtual.

  1. Habilite o roteamento de aplicativos para rotear o tráfego do aplicativo para a rede virtual.

    • Navegue até a guia Rede do aplicativo de funções. Em Configuração de tráfego de saída, selecione a sub-rede associada à integração de rede virtual.

    • Na nova página, marque a caixa Tráfego de saída da Internet em Roteamento de aplicativo.

  2. Habilite o roteamento de compartilhamento de conteúdo para que o seu aplicativo de funções se comunique com a sua nova conta de armazenamento por meio da sua rede virtual.

    • Na mesma página, marque a caixa de Armazenamento de conteúdo em Roteamento de configuração.

4. Atualizar as configurações do aplicativo

Por fim, você precisa atualizar as configurações do aplicativo para apontar para a nova conta de armazenamento segura.

  1. Atualize as Configurações do aplicativo na guia Configuração do aplicativo de funções para o seguinte:

    Nome da configuração Valor Comentário
    AzureWebJobsStorage
    WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
    Cadeia de conexão de armazenamento Ambas as configurações contêm a cadeia de conexão para a nova conta de armazenamento segura, que você salvou anteriormente.
    WEBSITE_CONTENTSHARE Compartilhamento de arquivo O nome do compartilhamento de arquivos criado na conta de armazenamento protegida em que residem os arquivos de implantação do projeto.
  2. Selecione Salvar para salvar as configurações do aplicativo. Alterar as configurações do aplicativo leva o aplicativo a ser reiniciado.

Quando o aplicativo de funções for reiniciado, ele será conectado a uma conta de armazenamento protegida.

Próximas etapas