Intercambio de mensajes AS2 mediante flujos de trabajo en Azure Logic Apps

Se aplica a: Azure Logic Apps (consumo + estándar)

Para enviar y recibir mensajes AS2 en los flujos de trabajo que crea mediante Azure Logic Apps, puede usar el conector AS2 (v2), que ofrece acciones que admiten y administran comunicaciones AS2. Si necesita funcionalidades de seguimiento, el conector AS2 original sigue estando disponible, pero está en desuso.

Excepto para las funcionalidades de seguimiento, el conector AS2 (v2) proporciona las mismas funcionalidades que el conector AS2 original, se ejecuta de forma nativa con el entorno de ejecución de Azure Logic Apps y ofrece importantes mejoras de rendimiento en cuanto al tamaño de los mensajes, la capacidad de proceso y la latencia. A diferencia del conector AS2 original, el conector AS2 (v2) no requiere que cree una conexión a la cuenta de integración. En su lugar, tal y como se describe en los requisitos previos, asegúrese de vincular la cuenta de integración al recurso de la aplicación lógica donde planea usar el conector.

En esta guía paso a paso se muestra cómo agregar las acciones de codificación y descodificación AS2 a un flujo de trabajo de aplicación lógica existente. El conector AS2 (v2) no incluye ningún desencadenador, por lo que puede usar cualquier desencadenador para iniciar el flujo de trabajo. Los ejemplos de esta guía usan el Desencadenador de solicitud.

Referencia técnica del conector

El conector AS2 tiene versiones diferentes, basadas en el tipo de aplicación lógica y el entorno de host.

Aplicación lógica Entorno Versión del conector
Consumo Azure Logic Apps multiinquilino Conectores administrados AS2 (v2) y AS2 (clase estándar). El conector AS2 (v2) solo proporciona acciones, pero puede usar cualquier desencadenador que funcione para su escenario. Para más información, revise la siguiente documentación:

- Referencia del conector administrado AS2
- Operaciones del conector administrado AS2 (v2)
- Límites de mensajes AS2
Consumo Entorno del servicio de integración (ISE) Los conectores administrados AS2 (v2) y AS2 (clase estándar) y la versión de ISE de AS2, que tiene límites de mensaje diferentes a los de la clase estándar. El conector AS2 (v2) solo proporciona acciones, pero puede usar cualquier desencadenador que funcione para su escenario. Para más información, revise la siguiente documentación:

- Referencia del conector administrado AS2
- Operaciones del conector administrado AS2 (v2)
- Límites de mensajes AS2
Estándar Azure Logic Apps de inquilino único y App Service Environment v3 (solo planes de Windows) Conector integrado AS2 (v2) y conector administrado AS2. La versión integrada difiere de las maneras siguientes:

- La versión integrada solo proporciona acciones, pero puede usar cualquier desencadenador que funcione para su escenario.

- La versión integrada puede acceder directamente a las redes virtuales de Azure. No necesita una puerta de enlace de datos local.

Para más información, revise la siguiente documentación:

- Referencia del conector administrado AS2
- Operaciones del conector integrado AS2 (v2)
- Límites de mensajes AS2

Operaciones de AS2 (v2)

El conector AS2 (v2) no tiene desencadenadores. En la tabla siguiente se describen las acciones que proporciona el conector AS2 (v2) para establecer la seguridad y confiabilidad al transmitir mensajes:

Acción Descripción
Acción Codificar con AS2 Proporciona cifrado, firma digital y confirmaciones a través de notificaciones de disposición de mensajes (MDN), que ayudan a admitir la no reproducción. Por ejemplo, esta acción aplica encabezados AS2/HTTP y realiza las siguientes tareas cuando se configuran:

- Firmar mensajes salientes.
- Cifrar mensajes salientes.
- Comprimir el mensaje.
- Transmitir el nombre de archivo en el encabezado MIME.
Acción Descodificar con AS2 Proporciona firmas digitales, descifrado y confirmaciones a través de las notificaciones de disposición de mensajes (MDN). Por ejemplo, esta acción realiza las siguientes tareas cuando se configura:

- Procesar encabezados AS2/HTTP.
- Conciliar los MDN recibidos con los mensajes de salida originales.
- Actualizar y correlacionar registros en la base de datos que no es de referencia.
- Escribir registros para los informes de estado de AS2.
- Devolver el contenido de la carga útil con codificación base64.
- Determinar si los MDN son necesarios. En función del contrato AS2, determina si los MDN deben ser sincrónicos o asincrónicos.
- Generar los MDN sincrónicos o asincrónicos según el contrato AS2.
- Establecer las propiedades y los tokens de correlación en los MDN.
- Comprobar la firma.
- Descifrar los mensajes.
- Descomprimir el mensaje.
- Comprobar y prohibir duplicados de identificador de mensaje.

Requisitos previos

  • Una cuenta y una suscripción de Azure. Si aún no tiene suscripción, regístrese para obtener una cuenta de Azure gratuita.

  • El recurso de aplicación lógica y el flujo de trabajo en los que quiere usar las operaciones AS2.

  • Un recurso de la cuenta de integración para definir y almacenar artefactos para utilizarlos en flujos de trabajo de integración empresarial y B2B.

    • Tanto la cuenta de integración como el recurso de aplicación lógica deben existir en la misma suscripción y región de Azure.

    • Define al menos dos asociados comerciales que participen en la operación AS2 utilizada en el flujo de trabajo. Las definiciones de ambos asociados deben usar el mismo calificador de identidad empresarial, que es AS2Identity en este escenario.

    • Define un contrato AS2 entre los asociados comerciales que participan en el flujo de trabajo. En cada contrato hacen falta un asociado anfitrión y un asociado invitado. El contenido de los mensajes entre usted y el otro asociado debe coincidir con el tipo de contrato. Para obtener información sobre la configuración del contrato que se va a usar al recibir y enviar mensajes, consulte configuraciones de mensaje AS2.

  • En función de si está trabajando en un flujo de trabajo de aplicación lógica de consumo o en uno estándar, es posible que el recurso de la aplicación lógica necesite un vínculo a la cuenta de integración:

    Flujo de trabajo de la aplicación lógica ¿Se necesita un vínculo?
    Consumo - Conector AS2 (v2): se requiere Conectar ion, pero no se requiere ningún vínculo
    - Conector AS2: se necesita un vínculo, pero no se necesita conexión
    Estándar - Conector AS2 (v2): vínculo necesario, pero no se requiere conexión.
    - Conector AS2: se necesita conexión, pero no se necesita ningún vínculo
  • Si usa Azure Key Vault para la administración de certificados, compruebe que las claves de almacén permitan las operaciones Cifrar y Descifrar. En caso contrario, las acciones de codificación y descodificación producirán un error.

    1. En Azure Portal, abra el almacén de claves. En el menú del almacén de claves, en Configuración, seleccione Claves.

    2. En el panel Claves, seleccione la clave. En el panel Versiones, seleccione la versión de la clave que está utilizando.

    3. En el panel Versión de la clave, en Operaciones permitidas, confirme que las operaciones Cifrar y Descifrar están seleccionadas, por ejemplo:

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

Codificación de mensajes AS2

Seleccione la pestaña correspondiente a los flujos de trabajo de aplicación lógica de consumo o estándar:

Conector AS2 v2

  1. En Azure Portal, abra el recurso de la aplicación lógica y el flujo de trabajo en el diseñador.

  2. En el diseñador, siga estos pasos generales para agregar la acción AS2 (v2) denominada AS2 Codificar al flujo de trabajo.

  3. En el cuadro de información de la acción, proporcione la información siguiente:

    Propiedad Obligatorio Descripción
    Mensaje que se codificará Por ejemplo, la carga útil del mensaje es la salida del cuerpo del desencadenador Request.

    1. Coloque el cursor en el cuadro Mensaje para codificar para que se abra la lista de contenido dinámico.
    2. Junto al nombre de sección Cuando se recibe una solicitud HTTP, seleccione Ver más.
    3. En la lista de salidas, seleccione Cuerpo.
    AS2 desde Identificador empresarial del remitente del mensaje según lo especificado por su contrato AS2; por ejemplo, Fabrikam.
    AS2 hasta Identificador empresarial del receptor del mensaje según lo especificado por su contrato AS2; por ejemplo, Contoso.

    Screenshot showing the

Conector AS2

  1. En Azure Portal, abra el recurso de la aplicación lógica y el flujo de trabajo en el diseñador.

  2. En el diseñador, siga estos pasos generales para agregar la acción AS2 denominada Codificar en mensaje AS2 al flujo de trabajo.

  3. Cuando se le pida que cree una conexión a la cuenta de integración, proporcione la siguiente información:

    Propiedad Obligatorio Descripción
    Nombre de la conexión Un nombre para la conexión
    Cuenta de integración En la lista de cuentas de integración disponibles, seleccione la cuenta que desea usar.

    Por ejemplo:

    Screenshot showing Consumption workflow and

  4. Seleccione Crear cuando haya terminado.

  5. En el cuadro de información de la acción, proporcione la información siguiente.

    Propiedad Obligatorio Descripción
    AS2-From Identificador empresarial del remitente del mensaje según lo especificado por su contrato AS2; por ejemplo, Fabrikam.
    AS2-To Identificador empresarial del receptor del mensaje según lo especificado por su contrato AS2; por ejemplo, Contoso.
    body Por ejemplo, la carga útil del mensaje para codificar es la salida del cuerpo del desencadenador Request.

    1. Coloque el cursor en el cuadro Cuerpo para que se abra la lista de contenido dinámico.
    2. Junto al nombre de sección Cuando se recibe una solicitud HTTP, seleccione Ver más.
    3. En la lista de salidas, seleccione Cuerpo.

    Screenshot showing the

Descodificación de mensajes AS2

Seleccione la pestaña correspondiente a los flujos de trabajo de aplicación lógica de consumo o estándar:

Conector AS2 v2

  1. En Azure Portal, abra el recurso de la aplicación lógica y el flujo de trabajo en el diseñador.

  2. En el diseñador, siga estos pasos generales para agregar la acción AS2 (v2) denominada AS2 Descodificar al flujo de trabajo.

  3. En el cuadro de información de la acción, proporcione la información siguiente:

    Propiedad Obligatorio Descripción
    body El cuerpo del mensaje para descodificar, por ejemplo, la salida del cuerpo del desencadenador Request.

    1. Coloque el cursor en el cuadro Cuerpo para que se abra la lista de contenido dinámico.
    2. Junto al nombre de sección Cuando se recibe una solicitud HTTP, seleccione Ver más.
    3. En la lista de salidas, seleccione Cuerpo.
    Encabezados Los encabezados del mensaje para descodificar, por ejemplo, la salida de los encabezados del desencadenador Request.

    1. Coloque el cursor en el cuadro Encabezados para que se abra la lista de contenido dinámico.
    2. Junto al nombre de sección Cuando se recibe una solicitud HTTP, seleccione Ver más.
    3. En la lista de salidas, seleccione Encabezados.

    Por ejemplo:

    Screenshot showing the

Conector AS2

  1. En Azure Portal, abra el recurso de la aplicación lógica y el flujo de trabajo en el diseñador.

  2. En el diseñador, siga estos pasos generales para agregar la acción AS2 denominada Descodificar mensaje AS2 al flujo de trabajo.

  3. Cuando se le pida que cree una conexión a la cuenta de integración, proporcione la siguiente información:

    Propiedad Obligatorio Descripción
    Nombre de la conexión Un nombre para la conexión
    Cuenta de integración En la lista de cuentas de integración disponibles, seleccione la cuenta que desea usar.

    Por ejemplo:

    Screenshot showing Consumption workflow and

  4. Seleccione Crear cuando haya terminado.

  5. En el cuadro de información de la acción, proporcione la información siguiente.

    Propiedad Obligatorio Descripción
    body Por ejemplo, la carga útil del mensaje es la salida del cuerpo del desencadenador Request.

    1. Coloque el cursor en el cuadro Cuerpo para que se abra la lista de contenido dinámico.
    2. Junto al nombre de sección Cuando se recibe una solicitud HTTP, seleccione Ver más.
    3. En la lista de salidas, seleccione Cuerpo.
    Encabezados Los encabezados del mensaje para descodificar, por ejemplo, la salida de los encabezados del desencadenador Request.

    1. Coloque el cursor en el cuadro Encabezados para que se abra la lista de contenido dinámico.
    2. Junto al nombre de sección Cuando se recibe una solicitud HTTP, seleccione Ver más.
    3. En la lista de salidas, seleccione Encabezados.

    Screenshot showing the

Ejemplo

Para intentar implementar una aplicación lógica totalmente operativa y un escenario de ejemplo de AS2 (v2), consulte el artículo sobre escenario y plantilla de aplicaciones lógicas de AS2 (v2).

Solucionar problemas

  • Problemas al enviar mensajes firmados o cifrados

    Considere la posibilidad de probar diferentes formatos de algoritmo SHA256. La especificación AS2 no proporciona ninguna información sobre los formatos SHA256, por lo que cada proveedor usa su propia implementación o formato.

Pasos siguientes