Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

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 Configure los filtros de auditoría y utilice el generador de filtros de auditoría de Atlas para simplificar la configuración de auditoría. Para obtener más información, consulte la documentación de Atlas. Configurar la auditoría de la base de datos y Configurar un filtro de auditoría personalizado.

MongoDB Enterprise admite la auditoría de diversas operaciones. Una solución de auditoría completa debe abarcar todos los mongod procesos del servidor y mongos del enrutador.

La función de auditoría puede escribir eventos de auditoría en la consola, el syslog (opción no disponible en Windows), un archivo JSON o un archivo BSON. Para obtener más información 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

En clústeres fragmentados, si habilita la auditoría en instancias,mongos también debe habilitarla en las instancias del clúster.mongod mongod Configure la auditoría para en todos los fragmentos 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 vincularse a otras direcciones IP, considere habilitar el control de acceso y otras medidas de seguridad enumeradas en la Lista de verificación de seguridad para implementaciones autoadministradas para evitar el acceso no autorizado.

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.

En un sistema Linux, los mensajes están sujetos a las reglas definidas en el archivo de configuración de Linux /etc/systemd/journald.conf. Por defecto, las ráfagas de mensajes de registro están limitadas a 1000 mensajes en un período de 30 segundos. Para ver más mensajes, aumente el parámetro RateLimitBurst en /etc/systemd/journald.conf.

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 vincularse a otras direcciones IP, considere habilitar el control de acceso y otras medidas de seguridad enumeradas en la Lista de verificación de seguridad para implementaciones autoadministradas para evitar el acceso no autorizado.

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

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

Para habilitar la auditoría e imprimir eventos de auditoría en un archivo en 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 vincularse a otras direcciones IP, considere habilitar el control de acceso y otras medidas de seguridad enumeradas en la Lista de verificación de seguridad para implementaciones autoadministradas para evitar el acceso no autorizado.

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 vincularse a otras direcciones IP, considere habilitar el control de acceso y otras medidas de seguridad enumeradas en la Lista de verificación de seguridad para implementaciones autoadministradas para evitar el acceso no autorizado.

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 8.0, MongoDB puede escribir mensajes de registro en OCSF formato. El esquema OCSF proporciona registros en un formato estandarizado compatible con procesadores de registros.

Para usar el esquema OCSF para mensajes de registro, establece la opción --auditSchema en OCSF. Por ejemplo:

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

También puedes especificar el esquema OCSF en la opción del archivo de configuración auditLog.schema:

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

Para obtener más información sobre el esquema OCSF, consulte Mensajes de auditoría del esquema OCSF.

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.

Usar la administración de filtros de auditoría en tiempo de ejecución en lugar de editar archivos de configuración directamente 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, actualice el archivo de configuración del nodo de la siguiente manera y reinicie 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 en tiempo de auditAuthorizationSuccess ejecución,auditConfig consulte.

Tip

Volver

Auditoría

En esta página