sql >> Base de Datos >  >> NoSQL >> MongoDB

Las tres A de la seguridad de MongoDB:autenticación, autorización y auditoría

MongoDB ha logrado avances impresionantes en los últimos 18 meses. Una de las áreas de MongoDB que ha visto la mejora más significativa ha sido su seguridad. La seguridad es de suma importancia para una base de datos de producción. Las bases de datos relacionales existentes brindan una serie de perillas y controles para ayudar al administrador de la base de datos (DBA) a administrar la seguridad de su base de datos, y MongoDB también está llegando a un lugar similar. En esta publicación, profundizaremos en las funciones de seguridad en las áreas de autenticación, autorización y auditoría.

  1. Autenticación

    MongoDB ofrece una variedad de mecanismos para autenticar la conexión de los usuarios a la base de datos. Elija el mecanismo que proporcione el mejor equilibrio entre seguridad y gestión. Aunque es opcional, se recomienda como práctica de seguridad que todos los sistemas de producción tengan activada la autenticación.

    • Autenticación de respuesta de desafío (MongoDB-CR)

      Esta es la autenticación tradicional basada en nombre de usuario/contraseña. Los usuarios se pueden crear en el ámbito de una base de datos o en todo el clúster. Si un usuario solo necesita acceder a los datos de una base de datos en particular, se recomienda crear solo el usuario específico para esa base de datos. El acceso a nivel de clúster debe estar restringido para los administradores.

    • Autenticación de certificado X.509

      Los usuarios pueden autenticarse en su base de datos MongoDB mediante el certificado X.509. Para hacer esto, el servidor MongoDB necesita tener habilitado SSL. De forma predeterminada, las compilaciones comunitarias de MongoDB no tienen habilitado SSL. Debe implementar su propia compilación o registrarse para usar la edición Enterprise. Puede crear un usuario en MongoDB para cada certificado X.509 con un asunto único. Para obtener más instrucciones paso a paso, consulte la configuración del certificado MongoDB X.509.

    • Autenticación Kerberos

      Las compilaciones empresariales de MongoDB admiten la autenticación mediante Kerberos, que es el estándar de la industria para la autenticación del servidor del cliente. Por ejemplo, si es una empresa con una instalación de Active Directory, puede usar el mecanismo de autenticación Kerberos para autenticar a sus usuarios. Esto evita la molestia de administrar nombres de usuario, contraseñas o certificados. Haga clic aquí para obtener instrucciones para integrar MongoDB con Active Directory.

  2. Autorización

    El sistema de autorización determina qué operaciones pueden realizar los usuarios una vez que hayan completado la autenticación. MongoDB admite un modelo de control de acceso basado en roles (RBAC). A cada usuario se le asignan funciones específicas que determinan las operaciones que puede realizar. MongoDB tiene un conjunto de funciones integradas y también puede crear sus propias funciones personalizadas. A cada rol se le asigna un conjunto de privilegios que emparejan los recursos con las operaciones permitidas en ese recurso. MongoDB proporciona funciones integradas en los siguientes ámbitos:

    • Funciones de usuario de la base de datos

      leer, leerEscribir

    • Funciones de administrador de base de datos (DBA)

      Administrador de base de datos, Propietario de base de datos, Administrador de usuario

    • Funciones de administrador de clúster

      administrador de clúster, administrador de clúster, monitor de clúster, administrador de host

    • Funciones de copia de seguridad y restauración

      copia de seguridad, restauración

    • Todos los roles de la base de datos

      leerCualquierBaseDeDatos, leerEscribirCualquierBaseDeDatos,AdministradorDeUsuarioCualquierBaseDeDatos

    • Funciones de superusuario

      raíz

    Consulte la documentación de funciones integradas para obtener una comprensión más detallada de las funciones que deben asignarse a sus usuarios.

  3. Auditoría

    La versión MongoDB Enterprise 2.6 agregó soporte para auditoría. Puede configurar el servidor MongoDB para generar eventos de auditoría para operaciones interesantes de MongoDB, como inicio de sesión de usuario, cambios de DDL, cambios de configuración de conjuntos de réplicas, etc. Esto le permite utilizar su herramienta de auditoría empresarial existente para recoger y procesar los eventos necesarios. Para obtener más información, consulte la lista de eventos de MongoDB que se pueden auditar.

Para obtener más consejos sobre cómo mejorar la seguridad de sus bases de datos MongoDB, consulte nuestra otra publicación de blog:10 consejos para mejorar su seguridad MongoDB.