Trocar mensagens AS2 usando fluxos de trabalho no Aplicativos Lógicos do Azure

Aplica-se a: Aplicativos Lógicos do Azure (Consumo + Standard)

Para enviar e receber mensagens AS2 em fluxos de trabalho criados usando os Aplicativos Lógicos do Azure, use o conector AS2 (v2), que fornece ações que dão suporte e gerenciam a comunicação do AS2. Se você precisar de recursos de acompanhamento, o conector AS2 original ainda estará disponível, mas será preterido.

Exceto pelas funcionalidades de acompanhamento, o conector AS2 (v2) fornece as mesmas funcionalidades que o conector AS2 original, é executado nativamente com o runtime dos Aplicativos Lógicos do Azure e oferece melhorias significativas de desempenho em termos de tamanho de mensagem, taxa de transferência e latência. Ao contrário do conector AS2 original, o conector AS2 (v2) não exige que você crie uma conexão com sua conta de integração. Em vez disso, conforme descrito nos pré-requisitos, vincule sua conta de integração ao recurso de aplicativo lógico em que você planeja usar o conector.

Este guia de instruções mostra como adicionar as ações de codificação e decodificação do AS2 a um fluxo de trabalho de aplicativo lógico existente. O conector AS2 (v2) não inclui nenhum gatilho, portanto, você pode usar qualquer gatilho para iniciar o fluxo de trabalho. Os exemplos deste guiará utilizam o gatilho de Solicitação.

Referência técnica do conector

O conector AS2 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 Conectores gerenciados AS2 (v2) e AS2 (classe Standard). O conector AS2 (v2) fornece apenas ações, mas você pode usar qualquer gatilho que funcione para seu cenário. Para saber mais, consulte a seguinte documentação:

- Referência do conector gerenciado AS2
- Operações de conector gerenciado AS2 (v2)
- Limites de mensagens AS2
Consumo Ambiente do serviço de integração (ISE) Conectores gerenciados AS2 (v2) e AS2 (classe Standard) e AS2 versão ISE, que tem limites de mensagem diferentes daqueles da classe Standard. O conector AS2 (v2) fornece apenas ações, mas você pode usar qualquer gatilho que funcione para seu cenário. Para saber mais, consulte a seguinte documentação:

- Referência do conector gerenciado AS2
- Operações de conector gerenciado AS2 (v2)
- Limites de mensagens AS2
Standard Aplicativos Lógicos do Azure de locatário único e Ambiente do Serviço de Aplicativo v3 (somente planos Windows) Conector interno do AS2 (v2) e conector gerenciado do AS2. A versão interna difere das seguintes maneiras:

– A versão interna fornece apenas ações, mas você pode usar qualquer gatilho que funcione para seu cenário.

– A versão interna pode acessar diretamente as redes virtuais do Azure. Você não precisa de um gateway de dados local.

Para saber mais, consulte a seguinte documentação:

- Referência do conector gerenciado AS2
- Operações internas do conector AS2 (v2)
- Limites de mensagens AS2

Operações AS2 (v2)

O conector AS2 (v2) não tem gatilhos. A seguinte tabela descreve as ações fornecidas pelo conector AS2 (v2) para estabelecer a segurança e a confiabilidade ao transmitir mensagens:

Ação Descrição
Ação codificar AS2 Fornece criptografia, assinatura digital e confirmações por meio de MDN (Message Disposition Notifications), que ajudam a oferecer suporte ao não repúdio. Por exemplo, essa ação aplica cabeçalhos AS2/HTTP e executa as seguintes tarefas quando configurada:

– Assinar mensagens de saída.
– Criptografar mensagens de saída.
– Compactar a mensagem.
– Transmitir o nome do arquivo no cabeçalho MIME.
Ação de decodificação do AS2 Forneça descriptografia, assinatura digital e confirmações por meio de MDN (notificações de disposição de mensagem). Por exemplo, essa ação executa as seguintes tarefas quando configurada:

– Processar cabeçalhos AS2/HTTP.
– Reconciliar MDNs recebidas com as mensagens de saída originais.
- Atualizar e correlacionar registros no banco de dados de não-repúdio.
– Gravar os registros para o relatório de status do AS2.
– Gerar o conteúdo da payload como codificado em base64.
– Determinar se MDNs são necessários. Com base no contrato AS2, determina se as MDNs devem ser síncronas ou assíncronas.
– Gerar MDNs síncronas ou assíncronas com base no contrato AS2.
– Definir as propriedades e os tokens de correlação nas MDNs.
– Verificar a assinatura.
– Descriptografar as mensagens.
– Descompactar a mensagem.
– Verificar e proibir duplicatas de ID de mensagem.

Pré-requisitos

  • Uma conta e uma assinatura do Azure. Caso ainda não tenha uma assinatura, inscreva-se em uma conta gratuita do Azure.

  • O recurso de aplicativo lógico e o fluxo de trabalho em que você deseja usar as operações AS2.

  • Um recurso de conta de integração para definir e armazenar artefatos para uso na Enterprise Integration e nos fluxos de trabalho B2B.

    • Tanto sua conta de integração quanto o recurso do aplicativo lógico devem existir na mesma assinatura do Azure e região do Azure.

    • Define pelo menos dois parceiros comerciais que participam da operação AS2 utilizada para seu fluxo de trabalho. As definições para os dois parceiros devem usar o mesmo qualificador de identidade de negócios, que é AS2Identity para esse cenário.

    • Define um contrato AS2 entre os parceiros comerciais que participam para seu fluxo de trabalho. Cada contrato requer um parceiro de host e um parceiro convidado. O conteúdo das mensagens entre você e o outro parceiro deve corresponder ao tipo de contrato. Para obter informações sobre as configurações do contrato a serem utilizadas no recebimento e envio de mensagens, confira Configurações de mensagens AS2.

  • Dependendo de se você está trabalhando em um fluxo de trabalho de aplicativo lógico de Consumo ou Standard, seu recurso de aplicativo lógico poderá exigir um link para sua conta de integração:

    Fluxo de trabalho do Aplicativo Lógico Link necessário?
    Consumo - Conector AS2 (v2): Conexão necessária, mas nenhum link necessário
    - Conector AS2: link necessário, mas nenhuma conexão necessária
    Standard - Conector AS2 (v2): Link necessário, mas nenhuma conexão necessária
    - Conector AS2: conexão necessária, mas nenhum link necessário
  • Se você usar o Azure Key Vault para o gerenciamento de certificados, verifique se as chaves do cofre permitem as operações Criptografar e Descriptografar. Caso contrário, haverá falha nas ações de codificação e decodificação.

    1. No portal do Azure, abra o cofre de chaves. No menu do cofre de chaves, em Configurações, selecione Chaves.

    2. No painel Chaves, selecione a chave. No painel Versões, selecione a versão da chave que você está usando.

    3. No painel Versão da Chave, em Operações permitidas, confirme se as operações Criptografar e Descriptografar foram selecionadas, por exemplo:

      Screenshot showing the Azure portal with the key vault, key, and key version panes open, which has the

Codificar mensagens AS2

Selecione a guia para fluxos de trabalho de aplicativo lógico de Consumo ou Standard:

Conector AS2 v2

  1. No portal do Azure, abra o recurso de aplicativo lógico e o fluxo de trabalho no designer.

  2. No designer, siga estas etapas gerais para adicionar a ação AS2 (v2) denominada Codificação AS2 para seu fluxo de trabalho.

  3. Na caixa de informações de ação, forneça as seguintes informações:

    Propriedade Obrigatório Descrição
    Mensagem a ser codificada Yes O conteúdo da mensagem, por exemplo, a saída Corpo do gatilho Solicitação.

    1. Coloque o cursor na caixa Mensagem para codificar para que a lista de conteúdo dinâmico seja aberta.
    2. Ao lado do nome da seção Quando uma solicitação HTTP é recebida, selecione Ver mais.
    3. Na lista de saídas, selecione Corpo.
    AS2 de Yes O identificador empresarial do remetente da mensagem conforme especificado pelo contrato AS2, por exemplo, Fabrikam.
    AS2 para Yes O identificador empresarial do destinatário da mensagem conforme especificado pelo contrato AS2, por exemplo, Contoso.

    Screenshot showing the

Conector AS2

  1. No portal do Azure, abra o recurso de aplicativo lógico e o fluxo de trabalho no designer.

  2. No designer, siga estas etapas gerais para adicionar a ação AS2 denominada Codificar to mensagens AS2 para seu fluxo de trabalho.

  3. Quando você for solicitado a criar uma conexão com a conta de integração, forneça as seguintes informações:

    Propriedade Obrigatório Descrição
    Nome da conexão Yes Um nome para a conexão
    Conta de integração Yes Na lista de contas de integração disponíveis, selecione a conta a ser usada.

    Por exemplo:

    Screenshot showing Consumption workflow and

  4. Quando terminar, selecione Criar.

  5. Na caixa de informações de ação, forneça as informações necessárias.

    Propriedade Obrigatório Descrição
    AS2-From Yes O identificador empresarial do remetente da mensagem conforme especificado pelo contrato AS2, por exemplo, Fabrikam.
    AS2-To Yes O identificador empresarial do destinatário da mensagem conforme especificado pelo contrato AS2, por exemplo, Contoso.
    body Yes O conteúdo da mensagem a ser codificado, por exemplo, a saída Corpo do gatilho Solicitação.

    1. Coloque o cursor na caixa corpo para que a lista de conteúdo dinâmico seja aberta.
    2. Ao lado do nome da seção Quando uma solicitação HTTP é recebida, selecione Ver mais.
    3. Na lista de saídas, selecione Corpo.

    Screenshot showing the

Decodificar mensagens AS2

Selecione a guia para fluxos de trabalho de aplicativo lógico de Consumo ou Standard:

Conector AS2 v2

  1. No portal do Azure, abra o recurso de aplicativo lógico e o fluxo de trabalho no designer.

  2. No designer, siga estas etapas gerais para adicionar a ação AS2 (v2) denominada Decodificação AS2 para seu fluxo de trabalho.

  3. Na caixa de informações de ação, forneça as seguintes informações:

    Propriedade Obrigatório Descrição
    body Yes O corpo da mensagem a ser decodificada, por exemplo, a saída Corpo do gatilho de Solicitação.

    1. Coloque o cursor na caixa corpo para que a lista de conteúdo dinâmico seja aberta.
    2. Ao lado do nome da seção Quando uma solicitação HTTP é recebida, selecione Ver mais.
    3. Na lista de saídas, selecione Corpo.
    Cabeçalhos Sim Os cabeçalhos da mensagem a serem decodificados, por exemplo, a saída Cabeçalhos do gatilho Solicitação.

    1. Coloque o cursor na caixa Cabeçalhos para abrir a lista de conteúdo dinâmico.
    2. Ao lado do nome da seção Quando uma solicitação HTTP é recebida, selecione Ver mais.
    3. Na lista de saídas, selecione Cabeçalhos.

    Por exemplo:

    Screenshot showing the

Conector AS2

  1. No portal do Azure, abra o recurso de aplicativo lógico e o fluxo de trabalho no designer.

  2. No designer, siga estas etapas gerais para adicionar a ação AS2 denominada Decodificar mensagem AS2 para seu fluxo de trabalho.

  3. Quando você for solicitado a criar uma conexão com a conta de integração, forneça as seguintes informações:

    Propriedade Obrigatório Descrição
    Nome da conexão Yes Um nome para a conexão
    Conta de integração Yes Na lista de contas de integração disponíveis, selecione a conta a ser usada.

    Por exemplo:

    Screenshot showing Consumption workflow and

  4. Quando terminar, selecione Criar.

  5. Na caixa de informações de ação, forneça as informações necessárias.

    Propriedade Obrigatório Descrição
    body Sim O conteúdo da mensagem, por exemplo, a saída Corpo do gatilho Solicitação.

    1. Coloque o cursor na caixa corpo para que a lista de conteúdo dinâmico seja aberta.
    2. Ao lado do nome da seção Quando uma solicitação HTTP é recebida, selecione Ver mais.
    3. Na lista de saídas, selecione Corpo.
    Cabeçalhos Sim Os cabeçalhos da mensagem a serem decodificados, por exemplo, a saída Cabeçalhos do gatilho Solicitação.

    1. Coloque o cursor na caixa Cabeçalhos para abrir a lista de conteúdo dinâmico.
    2. Ao lado do nome da seção Quando uma solicitação HTTP é recebida, selecione Ver mais.
    3. Na lista de saídas, selecione Cabeçalhos.

    Screenshot showing the

Amostra

Para tentar implantar um aplicativo lógico totalmente operacional e o cenário de exemplo AS2 (v2), examine o modelo e cenário de aplicativo lógico AS2 (v2).

Solução de problemas

  • Problemas ao enviar mensagens assinadas ou criptografadas

    Considere tentar diferentes formatos de algoritmo SHA256. A especificação AS2 não fornece nenhuma informação sobre formatos SHA256, de modo que cada provedor usa sua própria implementação ou formato.

Próximas etapas