Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /
Auditoría

Configurar la auditoría

Nota

Auditoría en MongoDB Atlas

MongoDB Atlas admite la auditoría para todos M10 y clústeres más grandes. Atlas admite especificar un filtro de auditoría en formato JSON como se documenta en Configura los filtros de auditoría y usa el constructor de filtros de auditoría de Atlas para una configuración simplificada de auditorías. Para obtener más información, consulte la documentación de Atlas sobre Configuración de la auditoría de bases de datos y Configuración de un filtro de auditoría personalizado.

MongoDB Enterprise admite auditoría de varias operaciones. Una solución completa de auditoría debe involucrar todos los mongod procesos de servidor y mongos de router.

La función de auditoría puede escribir eventos de auditoría en la consola, en el syslog (la opción no está disponible en Windows), en un archivo JSON o en un archivo BSON. Para obtener detalles sobre las operaciones auditadas y los mensajes del registro de auditoría, consulte Mensajes de auditoría de eventos del sistema.

Para habilitar la auditoría en MongoDB Enterprise, establezca un destino de salida de auditoría con --auditDestination.

Advertencia

Para clústeres particionados, si activas la auditoría en instancias mongos, también debes activarla en las instancias mongod del clúster. Configura la auditoría para mongod en todas las particiones y servidores de configuración.

Para habilitar la auditoría e imprimir los eventos de auditoría en syslog (opción no disponible en Windows) en formato JSON, especifica syslog para la configuración de --auditDestination. Por ejemplo:

mongod --dbpath data/db --auditDestination syslog

Incluir opciones adicionales según sea necesario para la configuración. Por ejemplo, si se desea que los clientes remotos se conecten a su implementación o si los miembros de su implementación se ejecutan en hosts diferentes, especificar el --bind_ip.

Importante

Antes de vincular a otras direcciones ip, considere habilitar el control de acceso y otras medidas de seguridad enumeradas en Lista de verificación de seguridad para implementaciones autogestionadas para evitar accesos no autorizados.

Advertencia

El límite de mensajes syslog puede provocar el recorte de los mensajes de auditoría. El sistema de auditoría no detectará el truncamiento ni el error en el momento que ocurra.

También puedes especificar estas opciones en el archivo de configuración:

storage:
dbPath: data/db
auditLog:
destination: syslog

Para habilitar la auditoría y imprimir los eventos de auditoría en la salida estándar (es decir, stdout), especifica console para el ajuste --auditDestination. Por ejemplo:

mongod --dbpath data/db --auditDestination console

Incluir opciones adicionales según sea necesario para la configuración. Por ejemplo, si se desea que los clientes remotos se conecten a su implementación o si los miembros de su implementación se ejecutan en hosts diferentes, especificar el --bind_ip.

Importante

Antes de vincular a otras direcciones ip, considere habilitar el control de acceso y otras medidas de seguridad enumeradas en Lista de verificación de seguridad para implementaciones autogestionadas para evitar accesos no autorizados.

También puedes especificar estas opciones en el archivo de configuración:

storage:
dbPath: data/db
auditLog:
destination: console

Para habilitar la auditoría y registrar los eventos de auditoría en un archivo formato JSON, especifique las siguientes opciones:

Opción
Valor

file

JSON

El nombre de archivo de salida. Se acepta tanto el nombre de ruta completo como el nombre de ruta relativo.

Por ejemplo, lo siguiente habilita la auditoría y registra los eventos de auditoría en un archivo con el nombre de ruta relativa de data/db/auditLog.json:

mongod --dbpath data/db --auditDestination file --auditFormat JSON --auditPath data/db/auditLog.json

Incluir opciones adicionales según sea necesario para la configuración. Por ejemplo, si se desea que los clientes remotos se conecten a su implementación o si los miembros de su implementación se ejecutan en hosts diferentes, especificar el --bind_ip.

Importante

Antes de vincular a otras direcciones ip, considere habilitar el control de acceso y otras medidas de seguridad enumeradas en Lista de verificación de seguridad para implementaciones autogestionadas para evitar accesos no autorizados.

El archivo de auditoría puede rotarse con el comando logRotate, ya sea junto con el registro del servidor o de forma independiente. Las especificidades de la rotación pueden configurarse con la opción del archivo de configuración systemLog.logRotate o la opción de línea de comandos --logRotate.

También puedes especificar estas opciones en el archivo de configuración:

storage:
dbPath: data/db
auditLog:
destination: file
format: JSON
path: data/db/auditLog.json

Nota

La impresión de eventos de auditoría en un archivo en formato JSON degrada el rendimiento del servidor más que imprimirlos en un archivo en formato BSON.

Para habilitar la auditoría y enviar los eventos de auditoría a un archivo en formato binario BSON, especifica las siguientes opciones:

Opción
Valor

file

BSON

El nombre de archivo de salida. Se acepta tanto el nombre de ruta completo como el nombre de ruta relativo.

Por ejemplo, lo siguiente habilita la auditoría y registra los eventos de auditoría en un archivo BSON con el nombre de ruta relativa de data/db/auditLog.bson:

mongod --dbpath data/db --auditDestination file --auditFormat BSON --auditPath data/db/auditLog.bson

Incluir opciones adicionales según sea necesario para la configuración. Por ejemplo, si se desea que los clientes remotos se conecten a su implementación o si los miembros de su implementación se ejecutan en hosts diferentes, especificar el --bind_ip.

Importante

Antes de vincular a otras direcciones ip, considere habilitar el control de acceso y otras medidas de seguridad enumeradas en Lista de verificación de seguridad para implementaciones autogestionadas para evitar accesos no autorizados.

El archivo de auditoría es rotated al mismo tiempo que la entrada de registro del servidor. Los detalles de la rotación pueden configurarse con la opción de archivo de configuración systemLog.logRotate o la opción de línea de comandos --logRotate.

También puedes especificar estas opciones en el archivo de configuración:

storage:
dbPath: data/db
auditLog:
destination: file
format: BSON
path: data/db/auditLog.bson

El siguiente ejemplo convierte el registro de auditoría en una forma legible utilizando bsondump y produce el resultado:

bsondump data/db/auditLog.bson

A partir de MongoDB 5.0, los filtros de auditoría pueden configurarse durante el tiempo de ejecución. La gestión de filtros de auditoría en tiempo de ejecución proporciona tres beneficios comparados con las configuraciones de filtros de auditoría que se especifican en un mongod local o en un archivo de configuración mongos:

Antes de MongoDB 5.0, cualquier persona que auditara una instancia de MongoDB mongod o mongos tenía que poseer acceso de escritura al sistema de archivos del servidor host para poder actualizar los filtros de auditoría. La gestión de filtros de auditoría en tiempo de ejecución mejora la seguridad al separar el acceso a la auditoría del acceso administrativo.

Utilizar la gestión de filtros de auditoría en tiempo de ejecución en lugar de editar directamente los archivos de configuración significa:

A partir de MongoDB 5.0, cuando la gestión de filtros de auditoría en tiempo de ejecución está habilitada, la auditoría puede reconfigurarse en tiempo de ejecución sin reiniciar la mongod o la instancia de mongos. Una instancia configurada estáticamente debe reiniciarse para actualizar su configuración de auditoría.

Las modificaciones del filtro de auditoría realizadas en tiempo de ejecución se mantienen cuando una instancia se apaga y reinicia.

Dentro de un clúster, si todos los mongod y mongos nodos participantes están configurados para usar la Gestión de Filtros de Auditoría en Tiempo de Ejecución, entonces todos los nodos usarán los mismos filtros de auditoría. En contraste, si cada nodo tiene sus propios filtros de auditoría configurados localmente, no hay garantía de coherencia de filtros de auditoría entre nodos.

A partir de MongoDB 5.0, las configuraciones de auditoría para los nodos mongod y mongos pueden configurarse en tiempo de ejecución. Un grupo de estos nodos puede participar en una configuración de auditoría distribuida.

Para incluir un nodo en una configuración de auditoría distribuida, se debe actualizar el archivo de configuración del nodo de la siguiente manera y reiniciar el servidor.

Parameter
Valor

true

Sin establecer

Sin establecer

El servidor registra un error y no puede iniciarse si:

Para modificar los filtros de auditoría y el parámetro auditAuthorizationSuccess en tiempo de ejecución, consultar setAuditConfig.

Tip

Volver

Auditoría

En esta página