Nota
Esta función no está disponible para
M0clústeres yFlexclústeres.
Puede usar Atlas Kubernetes Operator para configurar registros de auditoría. Para obtener más información, consulte Configurar la auditoría de base de datos.
La auditoría de bases de datos permite a los administradores supervisar la actividad del sistema en implementaciones con múltiples usuarios. Los administradores de Atlas pueden seleccionar las acciones, los usuarios de la base de datos, los roles de Atlas y los grupos LDAP que desean auditar. Atlas permite auditar la mayoría de las acciones documentadas de eventos del sistema, con las siguientes limitaciones:
Cuando un usuario de Atlas realiza una acción en la interfaz de usuario de Atlas en un clúster, tanto los
mongodb.logregistros de auditoría como el archivo registran al usuario demms-automationla base de datos como el usuario que realiza la acción auditable. Sin embargo, el canal de actividades del proyecto registra el nombre de usuario real del usuario de Atlas responsable de la acción.Los registros de auditoría de Atlas no rastrean los eventos de creación o modificación de usuarios porque Atlas realiza estas operaciones directamente en la base de datos
admin.
Importante
Realización de una auditoría completa de la base de datos
Debido a estas limitaciones señaladas, debe utilizar una combinación de registros de auditoría,mongodb.log y la fuente de actividad del proyecto para realizar una auditoría completa.
La acción del evento authCheck registra los intentos de autorización de los usuarios que intentan leer y escribir en las bases de datos de los clústeres del proyecto. Atlas audita los siguientes comandos específicos:
authCheck Reads | authCheck Writes |
|---|---|
| [1] | 1(,, 2 3) Las versiones 4.2 de MongoDB y posteriores no admiten estos comandos. |
Atlas implementa la acción de evento authCheck como las siguientes cuatro acciones distintas:
Acción de evento | Descripción |
|---|---|
|
|
|
ADVERTENCIA: si habilita auditAuthorizationSuccess, podría afectar gravemente el rendimiento del clúster. Activa esta opción con precaución. |
|
|
|
ADVERTENCIA: si habilita auditAuthorizationSuccess, podría afectar gravemente el rendimiento del clúster. Activa esta opción con precaución. |
Para aprender cómo MongoDB guarda eventos de auditoría en disco, consulta Garantías de Auditoría en el Manual de MongoDB.
Acceso requerido
Para configurar los registros de auditoría, debe tener Project Owner acceso al proyecto que desea actualizar o acceso a la organización que contiene el proyecto que desea Organization Owner actualizar.
Habilitar registros de auditoría
Nota
Para aprender sobre las mejores prácticas para auditar las acciones de los usuarios temporales de base de datos, consulta Auditar usuarios temporales de base de datos.
Para habilitar los registros de auditoría, configure spec.auditing.enabled a true en el AtlasProject recurso personalizado.
Ejemplo:
cat <<EOF | kubectl apply -f - apiVersion: atlas.mongodb.com/v1 kind: AtlasProject metadata: name: my-project spec: name: TestAuditing connectionSecretRef: name: my-atlas-key projectIpAccessList: - cidrBlock: "0.0.0.0/1" comment: "Everyone has access. For test purposes only." - cidrBlock: "128.0.0.0/1" comment: "Everyone has access. For test purposes only." auditing: enabled: true EOF
Para recuperar los registros de auditoría en Atlas, consulte Registros de MongoDB. Para recuperar los registros de auditoría mediante la API, consulte Registros.
Configurar un filtro de auditoría personalizado
Nota
Esta función no está disponible para los clústeres
M0yFlex.
Atlas ofrece soporte para especificar un filtro de auditoría en formato JSON para personalizar la auditoría de MongoDB.
Los filtros de auditoría personalizados permiten a los usuarios prescindir del generador de filtros de auditoría de la interfaz de usuario de Atlas administrada y optar por un control granular personalizado de la auditoría de eventos. Atlas solo comprueba que el filtro personalizado utilice una sintaxis JSON válida y no valida ni prueba su funcionalidad.
El documento de filtro de auditoría debe resolverse en una query que coincida con uno o más campos en el mensaje de evento de auditoría. El documento de filtro puede utilizar combinaciones de operadores del query y condiciones de igualdad para hacer coincidir los mensajes de auditoría deseados.
Para ver ejemplos de filtros de auditoría, consulta Ejemplos de filtros de auditoría. Para obtener más información sobre cómo configurar los filtros de auditoría de MongoDB, consulta Configurar el filtro de auditoría.
Importante
Atlas utiliza una estrategia de actualización continua para habilitar o actualizar la configuración de auditoría en todos los clústeres del proyecto Atlas. Las actualizaciones continuas requieren al menos una elección por conjunto de réplicas.
Para obtener más información sobre cómo probar la resiliencia de las aplicaciones ante las elecciones de conjuntos de réplicas, consulte /tutorial/test-resilience/test-primary-failover. Para obtener más información sobre cómo Atlas proporciona alta disponibilidad, consulte Alta disponibilidad de Atlas.
Para configurar un filtro de auditoría personalizado, especifique la opción spec.auditing.auditFilter en el AtlasProject recurso personalizado. Para especificar un valor para esta opción, debe establecer spec.auditing.enabled trueen.
Ejemplo:
cat <<EOF | kubectl apply -f - apiVersion: atlas.mongodb.com/v1 kind: AtlasProject metadata: name: my-project spec: name: TestAuditing connectionSecretRef: name: my-atlas-key projectIpAccessList: - cidrBlock: "0.0.0.0/1" comment: "Everyone has access. For test purposes only." - cidrBlock: "128.0.0.0/1" comment: "Everyone has access. For test purposes only." auditing: enabled: true auditFilter: "{"atype": "authenticate"}" EOF
Para obtener más información sobre los parámetros de configuración disponibles en el API, ver Auditoría Atlas.