Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: Aplicativos Lógicos do Azure (Consumo + Padrão)
Este guia mostra como acessar sua conta do Azure Blob Storage e o contêiner a partir de um fluxo de trabalho nos Azure Logic Apps usando o conector do Azure Blob Storage. Esse conector fornece gatilhos e ações que seu fluxo de trabalho pode usar para operações de blob. Você pode criar fluxos de trabalho automatizados que são executados quando acionados por eventos em seu contêiner de armazenamento ou em outros sistemas e executar ações para trabalhar com dados em seu contêiner de armazenamento. Por exemplo, você pode acessar e gerenciar arquivos armazenados como blobs na sua conta de armazenamento do Azure.
Você pode se conectar ao Armazenamento de Blobs do Azure a partir de um fluxo de trabalho em um aplicativo lógico de Consumo multilocatário ou em um aplicativo lógico padrão de locatário único. Enquanto os fluxos de trabalho de Consumo oferecem apenas a versão do conector gerenciado, os fluxos de trabalho padrão oferecem as versões do conector integrado e do conector gerenciado.
Referência técnica do conector
O conector do Armazenamento de Blobs do Azure tem versões diferentes, com base no tipo de aplicativo lógico e no ambiente do host.
Aplicativo lógico | Ambiente | Versão do conector |
---|---|---|
Consumo | Aplicativos Lógicos do Azure multilocatários | Conector gerenciado, que é exibido na galeria de conectores sob Compartilhado. Para obter mais informações, consulte a seguinte documentação: - Referência do conector gerenciado do Armazenamento de Blobs do Azure - Conectores gerenciados em Aplicativos Lógicos do Azure |
Padrão | Aplicativos Lógicos do Azure e Ambiente de Serviço de Aplicativo v3 de locatário único (somente planos do Windows) | O conector gerenciado (hospedado no Azure), que aparece na galeria de conectores em Shared, e o conector incorporado, que é baseado no provedor de serviços, e aparece na galeria de conectores em Built-in. A versão integrada difere nas seguintes maneiras: – A versão interna se conecta diretamente à sua conta de Armazenamento do Azure, exigindo apenas uma cadeia de conexão. - A versão integrada pode acessar diretamente redes virtuais do Azure. Para obter mais informações, consulte a seguinte documentação: - Referência do conector gerenciado do Armazenamento de Blobs do Azure - Referência do conector integrado do Azure Blob - Conectores integrados em Aplicativos Lógicos do Azure |
Limitações
As ações do conector gerenciado do Armazenamento de Blobs do Azure podem ler ou gravar arquivos com 50 MB ou menos. Para lidar com arquivos com mais de 50 MB, mas até 1.024 MB, as ações do Armazenamento de Blobs do Azure dão suporte ao agrupamento de mensagens. A ação do Armazenamento de Blobs chamada Obter conteúdo do blob usa automaticamente divisão em partes.
Embora os gatilhos gerenciados e internos do Armazenamento de Blobs do Azure não deem suportem para divisão em partes, os gatilhos internos podem lidar com arquivos de 50 MB ou mais. No entanto, quando um gatilho gerenciado solicita conteúdo de arquivo, o gatilho seleciona apenas arquivos com 50 MB ou menos. Para obter arquivos maiores que 50 MB, siga este padrão:
Use um gatilho Blob que retorna propriedades de arquivo, como Quando um blob é adicionado ou modificado (somente propriedades).
Siga o gatilho com a ação do conector gerenciado do Armazenamento de Blobs do Azure chamada Obter conteúdo do blob, que lê o arquivo completo e usa implicitamente o agrupamento.
Limites de gatilho do Armazenamento de Blobs do Azure
- O gatilho do conector gerenciado é limitado a 30.000 blobs na pasta virtual de sondagem.
- O gatilho do conector interno é limitado a 10.000 blobs em todo o contêiner de sondagem.
Se o limite for excedido, um novo blob pode não conseguir acionar o fluxo de trabalho, então o acionador será ignorado.
Pré-requisitos
Uma conta e assinatura do Azure. Se você não tiver uma assinatura do Azure, inscreva-se para obter uma conta gratuita do Azure.
O recurso de aplicativo lógico com o fluxo de trabalho em que você deseja acessar sua conta de Armazenamento do Azure.
Para iniciar um fluxo de trabalho com um acionador do Armazenamento de Blobs do Azure, você precisa ter um fluxo de trabalho em branco. Para usar uma ação de Armazenamento de Blobs do Azure, você precisa ter um fluxo de trabalho que já tenha um gatilho.
Se você não tiver um recurso de aplicativo lógico e um fluxo de trabalho, crie-os agora seguindo as etapas para o aplicativo lógico desejado:
Adicionar um gatilho de blob
Em um fluxo de trabalho de Consumo, somente o conector gerenciado do Armazenamento de Blobs do Azure está disponível. Em um fluxo de trabalho Padrão, tanto o conector gerenciado do Armazenamento de Blobs do Azure quanto o conector integrado estão disponíveis. Embora cada versão do conector forneça apenas um gatilho do Armazenamento de Blobs do Azure, o nome do gatilho difere da seguinte forma, dependendo se você tem um fluxo de trabalho de Consumo ou Padrão:
Aplicativo lógico | Versão do conector | Nome do gatilho | Descrição |
---|---|---|---|
Consumo | Apenas conector gerenciado | Quando um blob é adicionado ou modificado (somente propriedades) | O gatilho é disparado quando as propriedades de um blob são adicionadas ou atualizadas na pasta raiz do seu contêiner de armazenamento. Quando você configura o gatilho gerenciado, a versão gerenciada ignora os blobs existentes no seu contêiner de armazenamento. |
Padrão | Conector interno Conector gerenciado |
Integrado: Quando um blob é adicionado ou atualizado Gerenciado: Quando um blob é adicionado ou modificado (somente propriedades) |
Integrado: o gatilho é disparado quando um blob é adicionado ou atualizado no seu contêiner de armazenamento e é disparado para qualquer pasta aninhada no seu contêiner de armazenamento, não apenas para a pasta raiz. Quando você configura o gatilho integrado, a versão integrada processa todos os blobs existentes no seu contêiner de armazenamento. Gerenciado: o gatilho é acionado quando as propriedades de um blob são adicionadas ou atualizadas na pasta raiz do contêiner de armazenamento. Quando você configura o gatilho gerenciado, a versão gerenciada ignora os blobs existentes no seu contêiner de armazenamento. |
As etapas a seguir usam o portal do Azure, mas com a extensão apropriada do Azure Logic Apps, você também pode usar as seguintes ferramentas para criar fluxos de trabalho de Aplicativos Lógicos do Azure:
- Fluxos de trabalho de aplicativos de lógica de Consumo: Visual Studio Code
- Fluxos de trabalho de aplicativos lógicos padrão: Visual Studio Code
No portal do Azure, abra o recurso do aplicativo de lógica de Consumo.
No menu da barra lateral do recurso, em Ferramentas de Desenvolvimento, selecione o designer para abrir seu fluxo de trabalho em branco.
Adicione o gatilho gerenciado do Armazenamento de Blobs do Azure para seu cenário seguindo as etapas gerais para adicionar um gatilho ao fluxo de trabalho.
Este exemplo continua com o gatilho do Armazenamento de Blobs do Azure chamado Quando um blob é adicionado ou modificado (somente propriedades).
Se solicitado, forneça as seguintes informações para sua conexão com sua conta de armazenamento. Quando terminar, selecione Criar.
Propriedade Obrigatório Descrição Nome da conexão Sim Um nome para a conexão. Tipo de autenticação Sim O tipo de autenticação para sua conta de armazenamento. Para obter mais informações, examine os tipos de autenticação para gatilhos e ações que dão suporte à autenticação. Por exemplo, essa conexão usa a autenticação da Chave de Acesso e fornece o valor da chave de acesso para a conta de armazenamento, juntamente com os seguintes valores de propriedade:
Propriedade Obrigatório Valor Descrição Nome da conta de Armazenamento do Microsoft Azure ou ponto de extremidade do blob Sim, mas apenas para autenticação de chave de acesso < storage-account-name> O nome da conta de Armazenamento do Microsoft Azure onde seu contêiner de blobs está localizado.
Nota: Para encontrar o nome da conta de armazenamento, abra o recurso da conta de armazenamento no portal do Azure. No menu de recursos, em Segurança + rede, selecione Chaves de acesso. Em Nome da conta de armazenamento, copie e salve o nome.Chave de acesso à conta de Armazenamento do Microsoft Azure Sim, mas apenas para autenticação de chave de acesso < chave-de-acesso-da-conta-de-armazenamento> A chave de acesso para sua conta de armazenamento do Azure.
Nota: Para encontrar a chave de acesso, abra o recurso da sua conta de armazenamento no portal do Azure. No menu de recursos, em Segurança + rede, selecione Chaves de acesso>chave1>Mostrar. Copie e salve o valor da chave primária.Depois que a caixa de informações do gatilho aparecer, forneça as informações necessárias.
Para o valor da propriedade Contêiner, selecione o ícone de pasta para procurar o contêiner de blobs. Ou insira o caminho manualmente usando a sintaxe /<container-name>, por exemplo:
Se houver outros parâmetros para o gatilho, abra a lista de parâmetros Avançados e selecione os parâmetros desejados.
Para obter mais informações, revise Propriedades do gatilho do conector gerenciado do Armazenamento de Blobs do Azure.
Adicione outras ações necessárias para o seu fluxo de trabalho.
Quando terminar, salve seu fluxo de trabalho. Na barra de ferramentas do designer, selecione Salvar.
Adicionar uma ação Blob
Em um fluxo de trabalho de Consumo, somente o conector gerenciado do Armazenamento de Blobs do Azure está disponível. Em um fluxo de trabalho Padrão, tanto o conector gerenciado do Armazenamento de Blobs do Azure quanto o conector integrado estão disponíveis. Cada versão fornece várias ações nomeadas de forma diferente, com base em se você tem um fluxo de trabalho de Consumo ou Standard. Por exemplo, as versões do conector gerenciado e integrado têm suas próprias ações para obter metadados de arquivo e obter conteúdo de arquivo.
Ações de conectores gerenciados estão disponíveis em fluxos de trabalho de Consumo ou Padrão.
Ações de conectores integrados estão disponíveis somente em fluxos de trabalho Padrão.
As etapas a seguir usam o portal do Azure, mas com a extensão apropriada do Aplicativos Lógicos do Azure, você também pode usar as seguintes ferramentas para criar fluxos de trabalho de aplicativos lógicos:
- Fluxos de trabalho de Consumo: Visual Studio Code
- Fluxos de trabalho padrão: Visual Studio Code
No portal do Azure, abra o recurso do aplicativo de lógica de Consumo.
No menu da barra lateral do recurso, em Ferramentas de Desenvolvimento, selecione o designer para abrir o fluxo de trabalho.
Essas etapas pressupõem que o fluxo de trabalho já tenha um gatilho.
Esse exemplo usa o gatilho Recorrência.
Adicione a ação gerenciada do Armazenamento de Blobs do Azure para seu cenário seguindo as etapas gerais para adicionar uma ação ao fluxo de trabalho.
Esse exemplo continua com a ação chamada Obter conteúdo do blob.
Se solicitado, forneça as seguintes informações para sua conexão. Quando terminar, selecione Criar.
Propriedade Obrigatório Descrição Nome da conexão Sim Um nome para sua conexão Tipo de autenticação Sim O tipo de autenticação para sua conta de armazenamento. Para obter mais informações, examine os tipos de autenticação para gatilhos e ações que dão suporte à autenticação. Por exemplo, essa conexão usa a autenticação da Chave de Acesso e fornece o valor da chave de acesso para a conta de armazenamento, juntamente com os seguintes valores de propriedade:
Propriedade Obrigatório Valor Descrição Nome da conta de Armazenamento do Microsoft Azure ou ponto de extremidade do blob Sim, mas apenas para autenticação de chave de acesso < storage-account-name> O nome da conta de armazenamento do Azure onde seu contêiner de blobs está localizado.
Nota: Para encontrar o nome da conta de armazenamento, abra o recurso da conta de armazenamento no portal do Azure. No menu de recursos, em Segurança + rede, selecione Chaves de acesso. Em Nome da conta de armazenamento, copie e salve o nome.Chave de acesso à conta de Armazenamento do Microsoft Azure Sim, mas apenas para autenticação de chave de acesso < chave-de-acesso-da-conta-de-armazenamento> A chave de acesso para sua conta de armazenamento do Azure.
Nota: Para encontrar a chave de acesso, abra o recurso da sua conta de armazenamento no portal do Azure. No menu de recursos, em Segurança + rede, selecione Chaves de acesso>chave1>Mostrar. Copie e salve o valor da chave primária.Na caixa de informações da ação, forneça as informações necessárias.
Por exemplo, na ação Obter conteúdo de blob, forneça o nome da sua conta de armazenamento. Para o valor da propriedade Blob, selecione o ícone de pasta para procurar o contêiner de armazenamento ou pasta. Ou insira o caminho manualmente.
Tarefa Sintaxe do caminho do blob Obtenha o conteúdo de um blob específico na pasta raiz. /<nome-do-contêiner>/<nome-do-blob> Obtenha o conteúdo de um blob específico em uma subpasta. /<nome-do-contêiner>/<subpasta>/<nome-do-blob> O exemplo a seguir mostra a configuração da ação que obtém o conteúdo de um blob na pasta raiz:
O exemplo a seguir mostra a configuração da ação que obtém o conteúdo de um blob na subpasta:
Adicione outras ações necessárias para o seu fluxo de trabalho.
Quando terminar, salve seu fluxo de trabalho. Na barra de ferramentas do designer, selecione Salvar.
Acesse contas de armazenamento atrás de firewalls
Você pode adicionar segurança de rede a uma conta de armazenamento do Azure restringindo o acesso com um firewall e com regras de firewall. No entanto, essa configuração cria um desafio para o Azure e outros serviços da Microsoft que precisam de acesso à conta de armazenamento. A comunicação local no data center abstrai os endereços IP internos; portanto, apenas permitir o tráfego por meio de endereços IP pode não ser suficiente para permitir a comunicação pelo firewall. Com base no conector do Armazenamento de Blobs do Azure usado, as seguintes opções estão disponíveis:
Para acessar contas de armazenamento atrás de firewalls usando o conector gerenciado do Armazenamento de Blobs do Azure em aplicativos lógicos de Consumo, consulte as seguintes seções:
Para acessar contas de armazenamento atrás de firewalls em aplicativos lógicos padrão, revise a seguinte documentação:
Conector interno do Armazenamento de Blobs do Azure: Acesse contas de armazenamento por meio de integração de rede virtual
Conector gerenciado do Armazenamento de Blobs do Azure: acessar contas de armazenamento em outras regiões
Acessar contas de armazenamento em outras regiões
Se você não usar autenticação de identidade gerenciada, os fluxos de trabalho do aplicativo lógico não poderão acessar diretamente contas de armazenamento por trás de firewalls quando o recurso do aplicativo lógico e a conta de armazenamento estiverem na mesma região. Como alternativa, coloque o recurso do aplicativo lógico em uma região que não seja a mesma da sua conta de armazenamento. Em seguida, conceda acesso aos endereços IP de saída para os conectores gerenciados em sua região.
Observação
Essa solução não se aplica ao conector de Armazenamento de Tabelas do Azure e ao conector de Armazenamento de Filas do Azure. Em vez disso, para acessar seu Armazenamento de Tabelas ou Armazenamento de Filas, use o gatilho HTTP e a ação integrados.
Para adicionar seus endereços IP de saída ao firewall da conta de armazenamento, siga esses passos:
Observe os endereços IP de saída do conector gerenciado para a região do recurso de aplicativo lógico.
No portal do Azure, localize e abra seu recurso de conta de armazenamento.
No menu da barra lateral do recurso, em Segurança + rede, selecione Rede.
Em acesso à rede pública, selecione Habilitado em redes virtuais selecionadas e endereços IP.
Em Firewall, adicione os endereços IP ou intervalos que precisam de acesso. Se precisar acessar a conta de armazenamento do seu computador, selecione Adicionar o endereço IP do cliente.
Quando terminar, selecione Salvar.
Acesse contas de armazenamento por meio de uma rede virtual confiável
Se o aplicativo lógico e a conta de armazenamento existirem na mesma região:
Você pode colocar sua conta de armazenamento em uma rede virtual do Azure criando um ponto de extremidade privado e, em seguida, adicionar essa rede virtual à lista de redes virtuais confiáveis. Para dar ao seu aplicativo lógico acesso à conta de armazenamento por meio de uma rede virtual confiável, você precisa criar um aplicativo lógico padrão, que pode se conectar a recursos em uma rede virtual.
Se o aplicativo lógico e a conta de armazenamento existirem em regiões diferentes :
Crie um ponto de extremidade privado na sua conta de armazenamento para acesso.
Acesse contas de armazenamento por meio da integração de rede virtual
Se o aplicativo lógico e a conta de armazenamento existirem na mesma região:
Você pode colocar a conta de armazenamento em uma rede virtual do Azure criando um ponto de extremidade privado e, em seguida, adicionar essa rede virtual à lista de redes virtuais confiáveis. Para dar ao aplicativo lógico acesso à conta de armazenamento, você precisa configurar o tráfego de saída usando a integração de rede virtual para habilitar a conexão com recursos em uma rede virtual. Você pode então adicionar a rede virtual à lista de redes virtuais confiáveis da conta de armazenamento.
Se o aplicativo lógico e a conta de armazenamento existirem em regiões diferentes :
Crie um ponto de extremidade privado na sua conta de armazenamento para acesso.
Acesse o Blob Storage na mesma região com identidades gerenciadas pelo sistema
Para se conectar ao Armazenamento de Blobs do Azure em qualquer região, você pode usar identidades gerenciadas para autenticação. Você pode criar uma exceção que fornece aos serviços confiáveis do Azure, como uma identidade gerenciada, acesso à sua conta de armazenamento por meio de um firewall.
Observação
Essa solução não se aplica a aplicativos lógicos padrão. Mesmo se você usar uma identidade gerenciada atribuída pelo sistema com um aplicativo lógico padrão, o conector gerenciado do Armazenamento de Blobs do Azure não poderá se conectar a uma conta de armazenamento na mesma região.
Para usar identidades gerenciadas em seu aplicativo lógico para acessar o Blob Storage, siga essas etapas:
Observação
Esta solução tem as seguintes limitações:
Para autenticar sua conexão de conta de armazenamento, você precisa configurar uma identidade gerenciada atribuída pelo sistema. Uma identidade gerenciada atribuída pelo usuário não funcionará.
Configurar acesso à conta de armazenamento
Para configurar a exceção e o suporte à identidade gerenciada, primeiro configure o acesso apropriado à sua conta de armazenamento:
No portal do Azure, localize e abra seu recurso de conta de armazenamento.
No menu de navegação da conta de armazenamento, em Segurança + rede, selecione Rede.
Em acesso à rede pública, selecione Habilitado em redes virtuais selecionadas e endereços IP.
Se precisar acessar a conta de armazenamento do seu computador, em Firewall, selecione Adicionar o endereço IP do seu cliente.
Em Exceções, selecione Permitir que os serviços do Azure na lista de serviços confiáveis acessem esta conta de armazenamento.
Quando terminar, selecione Salvar.
Observação
Se você receber um erro 403 Proibido ao tentar se conectar à conta de armazenamento do seu fluxo de trabalho, há várias causas possíveis. Tente a seguinte resolução antes de passar para etapas adicionais. Primeiro, desabilite a configuração Permitir que os serviços do Azure na lista de serviços confiáveis acessem essa conta de armazenamento e salvem suas alterações. Em seguida, re habilite a configuração e salve as alterações novamente.
Criar atribuição de função para aplicativo lógico
Em seguida, habilite o suporte à identidade gerenciada no seu recurso de aplicativo lógico.
As etapas a seguir são as mesmas para aplicativos lógicos de consumo em ambientes multilocatários e aplicativos lógicos padrão em ambientes de locatário único.
No menu de navegação de recursos do aplicativo lógico, em Configurações, selecione Identidade.
No painel Sistema atribuído, defina Status como Ativado, caso ainda não esteja ativado, selecione Salvar e confirme suas alterações. Em Permissões, selecione Atribuições de função do Azure.
No painel Atribuições de função do Azure, selecione Adicionar atribuição de função.
No painel Adicionar atribuições de função, configure a nova atribuição de função com os seguintes valores:
Propriedade Valor Descrição Escopo < escopo do recurso> O conjunto de recursos onde você deseja aplicar a atribuição de função. Para esse exemplo, selecione Armazenamento. Assinatura < Assinatura do Azure> A assinatura do Azure para sua conta de armazenamento. Recurso < storage-account-name> O nome da conta de armazenamento que você deseja acessar no fluxo de trabalho do seu aplicativo lógico. Função < função a atribuir> A função que seu cenário exige para que seu fluxo de trabalho funcione com o recurso. Este exemplo usa o Colaborador de Dados de Blob de Armazenamento, que permite acesso de leitura, gravação e exclusão a contêineres de blob e data. Para obter detalhes sobre permissões, mova o mouse sobre o ícone de informações ao lado de uma função no menu suspenso. Quando terminar, selecione Salvar para finalizar a criação da atribuição de função.
Habilitar suporte de identidade gerenciada no aplicativo lógico
Em seguida, conclua estas etapas:
Se você tiver um fluxo de trabalho em branco, adicione um gatilho do conector de Armazenamento de Blobs do Azure. Caso contrário, adicione uma ação do conector Armazenamento de Blobs do Azure. Procure criar uma conexão para o gatilho ou a ação, em vez de usar uma conexão existente.
Não se esqueça de definir o tipo de autenticação para usar a identidade gerenciada.
Depois de configurar o gatilho ou a ação, salve o fluxo de trabalho e testar o gatilho ou a ação.
Solucionar problemas de acesso a contas de armazenamento
Erro: essa solicitação não está autorizada a executar essa operação.
O erro a seguir é um problema comumente relatado que ocorre quando seu aplicativo lógico e sua conta de armazenamento estão na mesma região. No entanto, existem opções disponíveis para resolver essa limitação, conforme descrito na seção Acessar contas de armazenamento atrás de firewalls.
{ "status": 403, "message": "This request is not authorized to perform this operation.\\r\\nclientRequestId: a3da2269-7120-44b4-9fe5-ede7a9b0fbb8", "error": { "message": "This request is not authorized to perform this operation." }, "source": "azureblob-ase.azconn-ase.p.azurewebsites.net" }
Erros do Application Insights
Erros 404 e 409 :
Se o seu fluxo de trabalho Padrão usar uma ação interna do Blob do Azure que adiciona um blob ao seu contêiner de armazenamento, você poderá receber erros 404 e 409 no Application Insights para solicitações com falha. Esses erros são esperados porque o conector verifica se o arquivo de blob existe antes de adicionar o blob. Os erros acontecem quando o arquivo não existe. Apesar desses erros, a ação interna adiciona o blob com sucesso.