Partilhar via


Como usar uma conta de armazenamento segura com o Azure Functions

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

Restringir a conta de armazenamento a uma rede virtual

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

Nota

Contas de armazenamento seguras são suportadas para todos os níveis do plano Dedicado (Serviço de Aplicativo) e do plano Elastic Premium. Eles também são apoiados pelo plano Flex Consumption. O plano de Consumo não suporta redes virtuais.

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

Armazenamento seguro durante a criação de aplicativos de função

Você pode criar um aplicativo funcional, juntamente com uma nova conta de armazenamento protegida por trás de uma rede virtual. As seções a seguir mostram como criar esses recursos usando o portal do Azure ou modelos de implantação.

Conclua as etapas em Criar um aplicativo de função em um plano Premium. Esta seção do tutorial de rede virtual mostra como criar um aplicativo de função que se conecta ao armazenamento em pontos de extremidade privados.

Nota

Ao criar seu aplicativo de função no portal do Azure, você também pode escolher uma conta de armazenamento segura existente na guia Armazenamento . No entanto, você deve configurar a rede apropriada no aplicativo de função para que ele possa se conectar através da rede virtual usada para proteger a conta de armazenamento. Se você não tiver permissões para configurar a rede ou não tiver preparado totalmente sua rede, selecione Configurar rede após a criação na guia Rede. Você pode configurar a rede para seu novo aplicativo de função no portal em Configurações>de rede.

Armazenamento seguro para um aplicativo de função existente

Quando você tem um aplicativo de função existente, você pode configurar diretamente a rede na conta de armazenamento que está sendo usada pelo aplicativo. No entanto, esse processo resulta em seu aplicativo de função estar inativo enquanto você configura a rede e enquanto seu aplicativo de função é reiniciado.

Para minimizar o tempo de inatividade, você pode, em vez disso, trocar uma conta de armazenamento existente por uma nova conta de armazenamento segura.

1. Habilite a integração de rede virtual

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

  1. Escolha um aplicativo de função 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 de rede virtual para seu aplicativo de função.

2. Crie uma conta de armazenamento segura

Configure uma conta de armazenamento segura para seu aplicativo funcional:

  1. Crie uma segunda conta de armazenamento. Essa conta de armazenamento é a conta de armazenamento segura para seu aplicativo de função usar em vez de sua conta de armazenamento não segura original. Você também pode usar uma conta de armazenamento existente que ainda não esteja sendo usada pelo Functions.

  2. Salve a cadeia de conexão para esta conta de armazenamento para usar mais tarde.

  3. Crie um compartilhamento de arquivos na nova conta de armazenamento. Para sua conveniência, você pode usar o mesmo nome de compartilhamento de arquivos da sua conta de armazenamento original. Caso contrário, se você usar um novo nome de compartilhamento de arquivos, deverá atualizar a configuração do aplicativo.

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

    • Crie um ponto de extremidade privado. Ao configurar sua conexão de ponto de extremidade privado, crie pontos de extremidade privados para os file e blob subrecursos. Para funções duráveis, você também deve tornar queue e table sub-recursos acessíveis por meio de pontos de extremidade privados. Se você estiver usando um servidor DNS (Sistema de Nomes de Domínio) personalizado ou local, configure o servidor DNS para resolver para os novos pontos de extremidade privados.

    • Restrinja o tráfego a sub-redes específicas. Verifique se seu aplicativo de função está integrado à rede com uma sub-rede permitida e se a sub-rede tem um ponto de extremidade de serviço para Microsoft.Storage.

  5. Copie o conteúdo de arquivo e blob da conta de armazenamento atual usada pelo aplicativo de função para a conta de armazenamento recém-protegida e o compartilhamento de arquivos. AzCopy e Azure Storage Explorer são métodos comuns. Se você usar o Gerenciador de Armazenamento do Azure, talvez seja necessário permitir que o endereço IP do cliente acesse o firewall da sua conta de armazenamento.

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

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

Nota

Essas etapas de configuração são necessárias apenas para os planos de hospedagem Elastic Premium e Dedicated (Serviço de Aplicativo ). O plano Flex Consumption não requer configurações do site para configurar a rede.

Agora você está pronto para rotear o tráfego do seu aplicativo de função para passar pela rede virtual:

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

    1. Na sua aplicação de funções, expanda Definições e, em seguida, selecione Rede. Na página Rede, em Configuração de tráfego de saída, selecione a sub-rede associada à sua integração de rede virtual.

    2. Na nova página, em Roteamento de aplicativos, selecione Tráfego de saída da Internet.

  2. Habilite o roteamento de compartilhamento de conteúdo para permitir que seu aplicativo de função se comunique com sua nova conta de armazenamento por meio de sua rede virtual. Na mesma página da etapa anterior, em Roteamento de configuração, selecione Armazenamento de conteúdo.

Nota

Você deve ter cuidado especial ao rotear para o compartilhamento de conteúdo em uma conta de armazenamento compartilhada por vários aplicativos de função no mesmo plano. Para obter mais informações, consulte Roteamento consistente através de redes virtuais no artigo Considerações sobre armazenamento.

4. Atualize as configurações do aplicativo

Finalmente, você precisa atualizar as configurações do aplicativo para apontar para a nova conta de armazenamento seguro:

  1. Na sua aplicação de funções, expanda Definições e, em seguida, selecione Variáveis de ambiente.

  2. No separador Definições da aplicação, atualize as seguintes definições selecionando cada definição, editando-a e, em seguida, selecionando Aplicar:

    Nome da definição Value Comentário
    AzureWebJobsStorage Cadeia de conexão de armazenamento Use a cadeia de conexão para sua nova conta de armazenamento seguro, que você salvou anteriormente.
    WEBSITE_CONTENTAZUREFILECONNECTIONSTRING Cadeia de conexão de armazenamento Use a cadeia de conexão para sua nova conta de armazenamento seguro, que você salvou anteriormente.
    WEBSITE_CONTENTSHARE Partilha de ficheiros Use o nome do compartilhamento de arquivos criado na conta de armazenamento seguro onde residem os arquivos de implantação do projeto.
  3. Selecione Aplicar e, em seguida , Confirmar para salvar as novas configurações do aplicativo no aplicativo de função.

    O aplicativo de função é reiniciado.

Depois que o aplicativo de função termina de reiniciar, ele se conecta à conta de armazenamento segura.

Próximos passos