Auditoría de actividad en Microsoft Dynamics 365

Si trabajas con Dynamics 365, seguro que más de una vez tu cliente te ha preguntado: “¿Cómo sé quién ha accedido a la información de este contacto?”. Puede que en ese instante hayas empezado a imaginar una implementación de auditoría a medida entre Dynamics 365 y la baseh de datos de moda que más te motive, olvidando las posibilidades “out of the box” del ecosistema Office 365. Para este caso en concreto, Microsoft dispone del Centro de Cumplimiento de Microsoft 365 (que está reemplazando de forma gradual al Centro de seguridad y cumplimiento de Office 365) con el que configurar esta funcionalidad en tan solo unos clics.

Haciendo uso de esta funcionalidad, muchos clientes podrán respetar las normativas de cumplimiento relacionadas con los accesos a datos de la organización.

¿En qué consiste?

El Centro de Cumplimiento de Microsoft 365 dispone de la opción de auditoría, que almacena las actividades realizadas por los usuarios de la organización desde las diferentes soluciones disponibles en Microsoft 365.

La funcionalidad de auditoría para actividades realizadas en Microsoft Dynamics 365 está disponible únicamente para entornos productivos bajo una suscripción a Microsoft Enterprise E3 y E5, y almacena la actividad de aquellos usuarios con las licencias adecuadas. Microsoft 365 dispone de dos soluciones de auditoría: básica y avanzada, dependiendo del tipo de licencia.

La auditoría básica se habilita de forma predeterminada, permitiendo el almacenamiento de registros durante 90 días. Desde el portal, como veremos más adelante, podremos realizar las búsquedas necesarias sobre las actividades almacenadas con la opción de exportar los resultados a CSV. Como se detallará en un próximo post, también dispondremos de acceso a través de Office 365 Management API.

La auditoría avanzada ofrece algunas funcionalidades extra, como la retención de registros desde 1 año hasta 10 años, directivas de retención de registros personalizadas y un mayor ancho de banda para el uso de Office 365 Management API.

Independientemente de la opción que utilicemos para realizar consultas al registro de auditoría, el usuario deberá pertenecer a un rol adecuado para ello. De forma predeterminada los administradores globales dispondrán de este permiso.

La información detallada sobre la disponibilidad de auditoría según licencia está disponible en la documentación oficial del Microsoft 365, accesible en el siguiente enlace.

¿Por dónde empezamos?

Desde hace unos años, Dynamics 365 dispone de la auditoría de registros sobre las tablas y campos de Dataverse, con la que es posible almacenar cada cambio realizado sobre un registro concreto. Además, cuenta con la posibilidad de registrar que usuarios acceden a la plataforma a nivel general. Sin embargo, con esta opción no es posible almacenar el detalle de acceso a los registros de las diferentes tablas existentes. Es decir, no podemos saber “que usuario accedió a este contacto”.

En la actualidad, accediendo al portal de administración de Power Platform en la configuración de Auditoría del entorno correspondiente, disponemos de la opción “Leer registros” que integra esta información con el Centro de Seguridad y Cumplimiento de Office 365 (que como indicábamos anteriormente, está siendo migrado al nuevo Centro de Cumplimiento).

Adicionalmente, será necesario realizar la configuración de cada una de las tablas de Dataverse que se desea auditar. Por el momento, esta configuración no está disponible en el nuevo portal de configuración de Power Apps, y deberemos configurarlo desde la interfaz clásica de Dynamics 365.

Una vez configurada la auditoría en Dynamics 365, el siguiente paso será acceder a la auditoría en el Centro de Cumplimiento de Microsoft 365.

¿Cómo buscamos registros?

La auditoría en el Centro de Cumplimiento está habilitada de forma predeterminada en las organizaciones, por lo que dispondremos del menú “Auditar” para mostrar el buscador de actividades auditadas:

Si por alguna razón de forma predeterminada no estuviera activa, la opción para activarla estaría visible en la parte superior del buscador. Por el contrario, si fuera necesario desactivarla, podríamos utilizar el cmdlet Set-AdminAuditLogConfig de módulo ExchangePowerShell.

Una vez que hemos confirmado que la auditoría se encuentra activa, podremos empezar a almacenar actividades y a consultarlas.

En el buscador disponemos de filtros por fecha, usuario o actividades. Para obtener toda la información auditada de Microsoft Dynamics 365, se puede aplicar el filtro de Actividades “Todas las actividades de Dynamics 365”:

Debemos tener en cuenta que la información puede tardar entre 30 minutos a 24 horas en aparecer como resultado de búsqueda, dependiendo del tipo de servicio. En el caso de Dynamics 365 CRM, Microsoft indica que es de 24 horas, aunque en la práctica se visualiza a las pocas horas.

Aunque en la documentación oficial de Microsoft se muestra que el buscador dispone de opciones de filtro por columna, guardado de búsquedas, o borrado de la búsqueda actual, estas opciones no están disponibles en todas las organizaciones. En estos casos, por el momento, se dispone de un buscador relativamente básico que cumple su funcionalidad. Confiamos en que Microsoft incluya nuevos filtros y mejore la experiencia de usuario en estos casos.

¿Qué resultados obtenemos?

Como resultado de la búsqueda, se mostrarán las actividades generales realizadas sobre Dynamics 365, como la autenticación de un usuario, así como las llamadas realizadas por trabajos del sistema.

Respecto a las tablas configuradas para la auditoría, se almacenará la información de todas las operaciones de creación, modificación, actualización y eliminación (CRUD por sus siglas en inglés) realizadas sobre los registros, la consulta de registros, exportación a Excel, visualización y exportación de informes, así como todas las operaciones realizadas a través de la SDK de Dynamics 365.

Cada registro dispone de un apartado “Detalle” donde se incluye toda la información auditada, dependiendo del tipo de registro. Esta información se visualizará haciendo clic sobre cada registro disponible.

De la información disponible destaca la siguiente:

  • Fecha en la que se realiza la petición.
  • Dirección IP desde la que se realiza la petición.
  • Usuario que realiza la petición Elemento, por ejemplo, “Retrieve account”, “Create account”, “Export Excel” …
  • Tipo de actividad, en este caso “Actividad de Dynamics 365”.
  • Detalle, donde se incluye el origen de la petición, por ejemplo, Dynamics 365, Portals… y la URL correspondiente.
  • Identificador de la organización y URL de la instancia.
  • Navegador (User Agent).
  • Consulta realizada (en los casos “RetrieveMultiple”) con el filtro realizado en la búsqueda.
  • Resultado de la búsqueda.

Además, el portal permite la exportación de los registros obtenidos en formato CSV para poder explotar la información a través de herramientas externas como Power Query en Excel.

Debemos tener en cuenta que únicamente se mostrarán los primeros 5000 resultados de búsqueda por pantalla y se exportarán a CSV un máximo de 50000 registros. Otro punto a tener en cuenta es que algunas actividades registradas pueden tener un tamaño superior al máximo soportado (3KB), por lo que estas se dividirán en varios registros de actividad que podrán identificarse a través del campo “CorrelationId”.

¿Qué más podemos hacer?

Durante este artículo nos hemos centrado en como explotar la auditoría del Centro de Cumplimiento respecto a las actividades en Dynamics 365, pero esto es solo una pequeña parte de lo que ofrece.

Cabe destacar que es posible realizar la auditoría sobre otros componentes de la plataforma Office 365, como Exchange, Sharepoint y Azure Active Directory. Podemos buscar actividades realizadas sobre carpetas de Sharepoint o OneDrive para empresas, actividades de Yammer o Microsoft Teams, o actividades de administración de Exchange o Azure AD. Además, permite la auditoría de actividad sobre Power Apps, que almacena actividades como la creación o publicación de una aplicación, los permisos sobre esta o su eliminación.

Para aquellas organizaciones que necesitan un estricto control sobre su información, la auditoría avanzada dispone de la creación directivas de retención de registros, que permite configurar el tiempo de almacenamiento de las actividades hasta un máximo de 10 años.

Puede llegar el momento en el que sea imposible gestionar el volumen de información de forma manual. Afortunadamente, es posible obtener toda la información almacenada en el Centro de Cumplimiento utilizando scripts de PowerShell cmdlet Search-UnifiedAuditLog o a través de la API de Actividad de Administración de Office 365 por medio de una suscripción a los blobs de contenido.

Conclusión

La opción de auditoría es una buena solución para que las acciones de los usuarios de nuestro sistema queden registradas, pudiendo de esta forma cumplir la legislación de acceso a datos necesaria en las organizaciones actualmente, así como ayudar en investigaciones de seguridad o análisis forense, como por ejemplo en casos de fugas de información.

Independientemente de la legislación en la que nos encontremos, el Centro de Cumplimiento de Microsoft 365 es un aliado indispensable para garantizar la correcta protección de la información alojada en nuestros sistemas y merece la pena dedicar un tiempo a descubrir todo lo que ofrece.

En un próximo artículo detallaremos como explotar Office 365 Management API, subscribiéndonos a sus blobs de contenido y analizando los resultados obtenidos.

He leído y acepto la política de privacidad
Acepto recibir emails sobre actividades de recruiting NTT DATA