Saltar al contenido principal

Configuración de Aplicaciones OAuth 2.0 y Almacenamiento​

Esta página describe cómo permitir que ExFlow almacene los archivos adjuntos de los documentos entrantes en SharePoint (o en un Contenedor Blob de Azure) en lugar de en la base de datos de Business Central.

Para obtener soporte sobre lo siguiente, contacte al departamento de TI interno o a un socio de confianza de Business Central.

Resumen de la configuración​

  1. Registre una aplicación en Microsoft Entra y concédale acceso a SharePoint.
  2. Cree una Aplicación OAuth 2.0 en ExFlow que utilice la aplicación de Entra para obtener un token de acceso.
  3. Prepare una carpeta de SharePoint y cree una Configuración de Almacenamiento en ExFlow que apunte a ella.
  4. Active el Almacenamiento en Blob para que ExFlow comience a mover los documentos.

Para un Contenedor Blob de Azure, los pasos 1 y 2 no son necesarios. Consulte Configuración de Almacenamiento en Blob para Contenedor Azure.

Valores que se deben copiar de Microsoft Entra​

Tenga a mano estos valores, se necesitan en el paso 2:

ValorUtilizado en el campo de ExFlow
ID de aplicación (cliente)ID de Aplicación / Cliente
Secreto de cliente (valor)Secreto de Cliente
Punto final de token de OAuth 2.0 (v2)URL de Token de Acceso
Punto final de autorización de OAuth 2.0 (v2)URL de Autorización
Punto final de la API de Microsoft GraphÁmbito (como https://graph.microsoft.com/.default)

Crear Aplicación o Principal de Servicio en MS Entra (o Azure)​

En el centro de administración de Microsoft Entra, vaya a Registros de aplicaciones y seleccione Nuevo registro. Ingrese un nombre de su elección, seleccione Cuentas en cualquier directorio organizativo y luego seleccione Registrar.

Registrar una nueva aplicación en Microsoft Entra

Después del registro, copie el ID de aplicación (cliente).

ID de aplicación (cliente) en la información general de la aplicación

Vaya a Permisos de API y seleccione Agregar un permiso.

Página Permisos de API

Seleccione Microsoft Graph y Permisos de aplicación.
Busque "site" y añada el permiso Sites.ReadWrite.All.

Añadir el permiso Sites.ReadWrite.All de Microsoft Graph

Seleccione Agregar un permiso de nuevo, luego SharePoint y Permisos de aplicación.
Seleccione y añada ambos permisos: Sites.ReadWrite.All y Sites.Manage.All.

Añadir permisos de SharePoint

Seleccione Conceder consentimiento de administrador para estos permisos:

Conceder consentimiento de administrador

Los permisos deberían verse así:

Permisos configurados

Vaya a Certificados y secretos.

Certificados y secretos

Cree un nuevo secreto de cliente:

Crear un secreto de cliente

Copie el Valor del secreto de inmediato y guárdelo de forma segura. Solo se muestra una vez. Si el secreto se pierde o caduca, cree un nuevo secreto e ingréselo en la Aplicación OAuth 2.0 en ExFlow.

Copiar el valor del secreto de cliente

Vuelva a la lista de registros de aplicaciones y seleccione Puntos de conexión. Copie el Punto final de autorización de OAuth 2.0 (v2), el Punto final de token de OAuth 2.0 (v2) y el Punto final de la API de Microsoft Graph.


Puntos de conexión del registro de aplicaciones

La configuración en Microsoft Entra ha finalizado.

Configurar una Aplicación OAuth2 en ExFlow​

Vaya a: Configuración de ExFlow --> Acciones --> Funciones --> Aplicaciones OAuth2

Seleccione Nuevo para crear una nueva Aplicación OAuth 2.0.

Lista de Aplicaciones OAuth 2.0

Ficha de la Aplicación OAuth 2.0

Complete los campos de la siguiente manera:

General
CódigoUn código corto de su elección que identifica esta aplicación, por ejemplo SHAREPOINT.
DescripciónUna descripción de la aplicación.
ID de Aplicación / ClientePegue el ID de aplicación (cliente) de Microsoft Entra.
Secreto de ClientePegue el valor del secreto de cliente de Microsoft Entra. El valor se almacena de forma segura y se muestra como asteriscos.
Tipo de ConcesiónSeleccione Credenciales de Cliente. Este es el tipo de concesión que se debe utilizar para el almacenamiento en SharePoint. (Código de Autorización y Credenciales de Contraseña también están disponibles. Credenciales de Contraseña muestra los campos adicionales Nombre de Usuario y Contraseña.)
URL de RedirecciónDéjelo vacío. Solo se utiliza con el tipo de concesión Código de Autorización.
ÁmbitoIngrese https://graph.microsoft.com/.default (el punto final de la API de Microsoft Graph seguido de .default).

Puntos finales
URL de AutorizaciónPegue el punto final de autorización de OAuth 2.0 (v2). Solo se utiliza con el tipo de concesión Código de Autorización, pero se puede completar de todos modos.
URL de Token de AccesoPegue el punto final de token de OAuth 2.0 (v2). Obligatorio.
Parámetros de URL de AutorizaciónDéjelo vacío. Solo se utiliza con el tipo de concesión Código de Autorización.

Ambas URL deben comenzar con https://.

Aplicación OAuth 2.0 completada

Pruebe la configuración seleccionando Solicitar Token de Acceso. Con Credenciales de Cliente, no se solicita inicio de sesión. Si todo es correcto, se muestra el mensaje "Token de Acceso actualizado con éxito." y el Estado en la lista de Aplicaciones OAuth 2.0 se establece en Conectado. Si algo está mal, se muestra el error de Microsoft y el Estado se establece en Error.

Acciones
Solicitar Token de AccesoObtiene un nuevo token de acceso utilizando la configuración de la ficha. Utilice esta acción para probar la configuración.
Actualizar Token de AccesoActualiza el token de acceso mediante un token de actualización. No se utiliza con Credenciales de Cliente, ya que no se emite ningún token de actualización. ExFlow solicita automáticamente un nuevo token cuando el anterior caduca.

Configuración de SharePoint​

En SharePoint, vaya a Contenido del sitio y cree una nueva Biblioteca de documentos. Luego cree una carpeta en la nueva biblioteca de documentos. ExFlow almacena los documentos en esta carpeta.

Abra la carpeta recién creada y copie la URL completa del campo de dirección del navegador. La URL es necesaria en la Configuración de Almacenamiento a continuación.

Nota: Asegúrese de copiar la URL después de abrir la carpeta. El nombre de la carpeta se lee de la parte ?id=... de esa URL. Si solo se copia la URL de la biblioteca de documentos, la carpeta debe ingresarse manualmente.

Configuración de Almacenamiento​

Vaya a: Configuración de ExFlow --> Acciones --> Funciones --> Gestión de Almacenamiento en Blob (la página Configuración de Gestión de Almacenamiento de ExFlow).

Seleccione Configuración de Almacenamiento y luego Nuevo.

Configuración de Almacenamiento de ExFlow

Ingrese un Código y una Descripción. Para Fuente de Blob, seleccione SharePoint.

Luego seleccione Configurar Almacenamiento para abrir la Configuración de SharePoint.

Página Configuración de SharePoint

Pegue la URL copiada de SharePoint en el campo URL de SharePoint. Al salir del campo, los valores de Host, Sitio, Biblioteca de Documentos y Carpeta se completan automáticamente. Si falta algún valor (normalmente Carpeta), ingréselo manualmente.

Configuración de SharePoint con los valores completados

Nota: Si la URL de SharePoint se cambia más adelante, se requiere una confirmación. Todos los valores de SharePoint se borran y se vuelven a leer de la nueva URL, y la conexión debe probarse de nuevo.

En Código de Aplicación OAuth2, seleccione la Aplicación OAuth 2.0 creada anteriormente y seleccione Conectar para probar la conexión.

Si todo está bien, el Estado de Conexión de SharePoint se establece en Conectado, y se completan ID de Sitio, ID de Unidad e ID de Lista.

Si la conexión falla, se muestra el error de SharePoint, por ejemplo:

MensajeCausa más probable
Not FoundEl nombre del sitio o de la biblioteca de documentos es incorrecto.
Unauthorized o ForbiddenFaltan los permisos de API o no se ha concedido el consentimiento de administrador en Microsoft Entra.

Estado de Conexión de SharePoint
DesconectadoLa conexión aún no se ha probado.
RevalidarSe ha cambiado una configuración desde la última prueba. Seleccione Conectar de nuevo.
ConectadoLa conexión se ha probado correctamente.

Cierre la página Configuración de SharePoint. En la página Configuración de Almacenamiento de ExFlow, seleccione Habilitar / Deshabilitar para que Habilitado quede activado. Esto solo es posible cuando el Estado de Conexión de SharePoint es Conectado.

Configuración de Almacenamiento habilitada

Cierre la Configuración de Almacenamiento de ExFlow y vuelva a Configuración de Gestión de Almacenamiento de ExFlow.

Activar el Almacenamiento en Blob​

En Configuración de Gestión de Almacenamiento de ExFlow, seleccione la nueva configuración de almacenamiento en Código de Almacenamiento de Doc. Entrante.

Seleccionar el Código de Almacenamiento de Doc. Entrante

Revise la Estructura del Nombre del Blob antes de continuar. Se recomienda el valor predeterminado, Split String 2 Char 3 Levels. La Estructura del Nombre del Blob y el Código de Almacenamiento de Doc. Entrante no se pueden cambiar mientras el Almacenamiento en Blob esté activo.

Active Activo o seleccione Habilitar/ Deshabilitar Almacenamiento en Blob.

Activar el Almacenamiento en Blob

Si hay facturas o abonos registrados en ExFlow, ExFlow pregunta si se deben añadir al almacenamiento en blob. Seleccione Sí para continuar. Seleccionar No cancela la activación.

Cuando se activa el Almacenamiento en Blob, ExFlow crea la entrada de cola de trabajos ExFlow Blob Storage Job - Recurring (categoría EXFLOW). Se ejecuta cada 60 minutos entre las 08:00 y las 17:00 y mueve los documentos al almacenamiento. Lea más en Cola de Trabajos.

Para verificar el estado de las facturas registradas en el almacenamiento en blob, seleccione Acciones --> Detalles del Almacenamiento.

Para mover los documentos al almacenamiento de inmediato en lugar de esperar a la cola de trabajos, seleccione Sincronizar Almacenamiento.

Detalles del Almacenamiento y Sincronizar Almacenamiento

Actualice la carpeta de SharePoint en el navegador. Las nuevas carpetas creadas por ExFlow deberían ser visibles ahora.

Carpetas creadas por ExFlow en SharePoint

Desactivar el Almacenamiento en Blob: Si Activo se desactiva de nuevo, se requiere una confirmación. Todos los documentos almacenados en el almacenamiento en blob se restauran entonces en la base de datos de Business Central, y se borran la caché de almacenamiento y las referencias cruzadas. Esto puede tardar algún tiempo si hay muchos documentos.

Configuración de Almacenamiento en Blob para Contenedor Azure​

La configuración para un Contenedor Blob de Azure es similar a la de SharePoint, pero no utiliza una Aplicación OAuth 2.0.

Vaya a: Configuración de ExFlow --> Acciones --> Funciones --> Gestión de Almacenamiento en Blob, seleccione Configuración de Almacenamiento y cree una nueva configuración con Fuente de Blob establecida en Contenedor Azure. Luego seleccione Configurar Almacenamiento para configurar los ajustes del Contenedor Blob de Azure.

Configuración de Contenedor Azure
Cuenta de AlmacenamientoNombre de la Cuenta de Almacenamiento de Azure. Debe tener entre 3 y 24 caracteres.
Nombre del ContenedorNombre del contenedor en la Cuenta de Almacenamiento. Debe tener entre 3 y 63 caracteres.
Clave de Acceso CompartidoLa clave de acceso que se encuentra en Claves de acceso de la Cuenta de Almacenamiento de Azure en Azure Portal. La clave se guarda en el almacenamiento aislado y se muestra como ********** una vez guardada. Borre el campo para eliminar la clave.
ProbarComprueba que la configuración es válida y que el contenedor existe. Si todo está bien, se muestra el mensaje "Azure Blob Container settings OK".

Si la prueba falla, se muestra uno de estos mensajes:

MensajeCausa más probable
Azure Shared Account Key missingClave de Acceso Compartido está vacía.
Unable to fetch list of containers, please review settingsCuenta de Almacenamiento o Clave de Acceso Compartido es incorrecta.
Container does not exist, please review settingsNombre del Contenedor es incorrecto, o el contenedor no se ha creado en Azure.

Cuando la prueba sea correcta, vuelva a Configuración de Almacenamiento de ExFlow, seleccione Habilitar / Deshabilitar para que Habilitado quede activado y continúe de la misma manera que para SharePoint: seleccione la configuración en Código de Almacenamiento de Doc. Entrante y active el Almacenamiento en Blob.

Para obtener más detalles sobre el trabajo con Contenedores Blob de Azure, visite Microsoft Learn Introducción a Azure Blob Storage.

Referencia: Configuración de Gestión de Almacenamiento de ExFlow​

Acciones
Configuración de AlmacenamientoConfigure una o más configuraciones de almacenamiento (SharePoint o Contenedor Azure).
Habilitar/ Deshabilitar Almacenamiento en BlobActive o desactive el almacenamiento en blob. Igual que el campo Activo.
Detalles del AlmacenamientoMuestra las entradas en caché y las entradas de referencias cruzadas.
Sincronizar AlmacenamientoEjecuta de inmediato la misma transferencia que la cola de trabajos.
Añadir Manualmente Todos los Documentos Registrados a la CachéAñade a la caché de almacenamiento todos los documentos entrantes vinculados a documentos registrados de ExFlow.
Restaurar Manualmente Todos los Entrantes Registrados desde la CachéRestaura desde el almacenamiento a la base de datos todos los documentos entrantes vinculados a documentos registrados de ExFlow.

General
Cache en DíasEspecifica cuántos días permanece el contenido en caché en Business Central. Después del número de días especificado, el contenido se elimina del almacenamiento local. Se recomienda establecer 60 días.
Tamaño del LoteEstablezca 0 para transferir todos los documentos en un solo lote durante la sincronización. Establezca un valor superior a 0 para transferir solo esa cantidad de documentos por sincronización. Se aplica tanto a la cola de trabajos como a Sincronizar Almacenamiento.
Estructura del Nombre del BlobEspecifica la convención de nombres utilizada para la ruta a los blobs. Split String 2 Char 3 Levels (predeterminado y recomendado) divide el nombre en una ruta como ab/cd/ef/abcdefgh. As-Is utiliza el nombre sin dividirlo. No se puede cambiar mientras el Almacenamiento en Blob esté activo.
ActivoHabilita el Almacenamiento en Blob. Requiere que Código de Almacenamiento de Doc. Entrante esté completado.

Códigos de Almacenamiento
Código de Almacenamiento de Doc. EntranteLa configuración de almacenamiento utilizada para los archivos adjuntos de documentos entrantes de los documentos registrados de ExFlow. Los nombres de archivo, la estructura de carpetas y la recuperación son gestionados por ExFlow. No se puede cambiar mientras el Almacenamiento en Blob esté activo.
Código de Almacenamiento en Blob GeneralLa configuración de almacenamiento utilizada por la API general de Almacenamiento en Blob. Solo es necesaria para extensiones de socios/desarrolladores, consulte a continuación.

Para socios y desarrolladores: Cuando Código de Almacenamiento en Blob General está configurado con una configuración de almacenamiento (puede ser la misma que para Código de Almacenamiento de Doc. Entrante), se puede utilizar la API de archivos de la codeunit BSApi (API de Almacenamiento en Blob). Funciona como un sistema de archivos en el que se pueden escribir y leer archivos, y el desarrollador controla los nombres y la estructura. El Almacenamiento en Blob para archivos adjuntos de documentos entrantes utiliza internamente la misma BSApi.