Protección del servidor flexible de Azure Database for PostgreSQL

Azure Database for PostgreSQL es un servicio de base de datos totalmente administrado que proporciona alta disponibilidad integrada, copias de seguridad automatizadas y funcionalidades de escalado. Proteger las implementaciones de base de datos de PostgreSQL ayuda a proteger los datos confidenciales y a cumplir los requisitos de cumplimiento.

En este artículo se explica cómo proteger la implementación de servidor flexible de Azure Database for PostgreSQL.

Las recomendaciones de seguridad de este artículo implementan principios de confianza cero: "Comprobar explícitamente", "Usar acceso con privilegios mínimos" y "Asumir vulneración de seguridad". Para obtener instrucciones de Confianza cero completas, consulte el Centro de instrucciones Confianza cero.

Seguridad de red

Los controles de seguridad de red ayudan a reducir la exposición pública e integrar Azure Database for PostgreSQL servidor flexible en una arquitectura de red virtual segmentada.

Administración de identidades y acceso

Los controles de identidad y acceso ayudan a centralizar la autenticación, reducir la exposición de credenciales y aplicar privilegios mínimos en la administración de Azure y el acceso a la base de datos de PostgreSQL.

  • Uso de la autenticación Microsoft Entra: se prefiere la autenticación Microsoft Entra para el servidor flexible de PostgreSQL para centralizar los controles de identidad y reducir la dependencia de las contraseñas de base de datos locales. Para obtener más información, consulte autenticación de Microsoft Entra con Azure Database for PostgreSQL.

  • Administrar identidades de Microsoft Entra: Asigne y revise administradores, usuarios y grupos de Microsoft Entra para PostgreSQL Flexible Server para que el acceso a la base de datos respete el principio de privilegio mínimo. Para obtener más información, consulte Administración de roles de Microsoft Entra en Azure Database for PostgreSQL.

  • Use identidades administradas para el acceso de aplicaciones: Autentique las aplicaciones alojadas en Azure en el Servidor flexible de PostgreSQL con identidades administradas en lugar de almacenar credenciales en el código o en la configuración de la aplicación. Para obtener más información, consulte Identidades administradas en Azure Database for PostgreSQL.

  • Aplicar el acceso condicional para los administradores de PostgreSQL: aplique directivas de acceso condicional, como la autenticación multifactor y los requisitos de dispositivos compatibles a las identidades que administran servidores flexibles de PostgreSQL y recursos de Azure relacionados. Para más información, consulte Política de Acceso Condicional Común: Requerir MFA para la gestión de Azure.

  • Use SCRAM para la autenticación local: si se requieren usuarios locales de PostgreSQL, use la autenticación SCRAM y prácticas sólidas de contraseñas para reducir el riesgo de que las contraseñas se vean comprometidas. Para obtener más información, consulte Autenticación SCRAM en Azure Database for PostgreSQL.

  • Administrar roles locales de la base de datos: Utilice roles y permisos de PostgreSQL para restringir el acceso a nivel de base de datos a los objetos y operaciones que necesita cada usuario. Para obtener más información, consulte Administrar usuarios en Azure Database for PostgreSQL.

  • Implementar el control de acceso basado en roles de Azure (RBAC): asigne roles de Azure RBAC solo a las identidades que necesiten crear, configurar, supervisar o eliminar recursos del servidor flexible de PostgreSQL. Para obtener más información, consulte control de acceso basado en roles de Azure.

Protección de los datos

Azure Database for PostgreSQL cifra servidores principales, réplicas, datos de recuperación a un momento dado y copias de seguridad en reposo mediante claves administradas por el servicio. Use los siguientes controles configurables por el cliente cuando la carga de trabajo requiera protecciones de uso de datos o gobernanza de cifrado más sólidas.

  • Comprobar las conexiones TLS: configure los clientes de PostgreSQL para validar la cadena de certificados de servidor y el nombre de host mediante sslmode=verify-full, o sslmode=verify-ca donde verify-full no sea posible. Para obtener más información, consulte Seguridad de la capa de transporte en Azure Database for PostgreSQL.

  • Mantenga los certificados raíz de confianza: mantenga las entidades de certificación raíz de Azure en los almacenes de confianza del cliente y evite confiar en certificados intermedios o en certificados individuales de servidor para evitar que la rotación de certificados interrumpa la conectividad. Para obtener más información, consulte Seguridad de la capa de transporte en Azure Database for PostgreSQL.

  • Exigir TLS 1.3 cuando sea compatible: establezca el parámetro de servidor TLSv1.3 en ssl_min_protocol_version para los clientes que admitan la versión más reciente del protocolo seguro, y no establezca ssl_max_protocol_version. Para obtener más información, consulte Seguridad de la capa de transporte en Azure Database for PostgreSQL.

  • Usar claves administradas por el cliente para la gobernanza del cifrado: configure claves administradas por el cliente en Azure Key Vault o Azure HSM administrado cuando necesite controlar el ciclo de vida de las claves o separar las tareas. Use claves administradas por el cliente entre inquilinos solo para escenarios de versión preliminar que cumplan los requisitos documentados. Para obtener más información, consulte Cifrado de datos en reposo en Azure Database for PostgreSQL y Configuración del cifrado de datos en Azure Database for PostgreSQL.

  • Configurar la rotación automática de claves: si usa claves administradas por el cliente, habilite la autorización de claves en Azure Key Vault o Azure HSM administrado y configure el servidor flexible de PostgreSQL para usar actualizaciones automáticas de versiones de clave. Para más información, consulte Configuración del cifrado de claves administradas por el cliente.

  • Uso de la computación confidencial para cargas de trabajo altamente confidenciales: implemente un servidor flexible de PostgreSQL en SKU de computación confidencial compatibles en regiones admitidas cuando necesite protección basada en hardware para los datos en uso. Para obtener más información, consulte la informática confidencial de Azure en Azure Database for PostgreSQL.

  • Aplicar anonimización de datos para datos confidenciales de PostgreSQL: use la anon extensión cuando necesite herramientas de anonimización de datos de nivel de base de datos y configure las bibliotecas de precarga compartida necesarias antes de usarlas. Para obtener más información, consulte la Lista de extensiones y módulos por nombre en el servidor flexible de Azure Database for PostgreSQL.

Registro y supervisión

Los controles de registro y supervisión le ayudan a detectar actividades sospechosas, investigar incidentes y mantener la evidencia de auditoría de PostgreSQL disponible para los flujos de trabajo operativos y de cumplimiento.

  • Habilitar la recopilación de registros de diagnóstico: enviar los registros de auditoría de PostgreSQL Flexible Server a Log Analytics mediante la configuración de diagnóstico y las asignaciones de Azure Policy para el grupo de categorías de auditoría. Para obtener más información, consulte las definiciones integradas de Azure Policy para Azure Database for PostgreSQL.

  • Habilitar el registro de auditoría: configure el registro de auditoría de PostgreSQL con la pgaudit extensión para que las actividades de base de datos se capturen para la investigación y la revisión de cumplimiento. Para obtener más información, consulte Registro de auditoría en Azure Database for PostgreSQL.

  • Auditar eventos de autenticación de Microsoft Entra: Supervise la actividad de autenticación de Microsoft Entra para el servidor flexible de PostgreSQL a fin de investigar los patrones de acceso basado en identidades e inicio de sesión. Para obtener más información, consulte Auditar la autenticación de Microsoft Entra en Azure Database for PostgreSQL.

  • Habilitar Microsoft Defender para bases de datos relacionales de código abierto: Use Microsoft Defender para la nube para detectar patrones de acceso anómalos a PostgreSQL, intentos de fuerza bruta, actividad sospechosa en la base de datos y riesgos de configuración específicos de PostgreSQL. Para más información, consulta Microsoft Defender para la nube en Azure Database for PostgreSQL: servidor flexible.

Cumplimiento y gobernanza

Los controles de cumplimiento y gobernanza le ayudan a aplicar una configuración coherente, asignar implementaciones de PostgreSQL a los requisitos normativos y mantener la propiedad de seguridad visible a escala.

  • Aplicar la configuración de seguridad de PostgreSQL con Azure Policy: asigne directivas integradas para controles de servidor flexible de PostgreSQL, como puntos de conexión privados, restricciones de acceso público, registro de diagnóstico, TLS, claves administradas por el cliente y copia de seguridad con redundancia geográfica. Para obtener más información, consulte las definiciones integradas de Azure Policy para Azure Database for PostgreSQL.

  • Revise las ofertas de cumplimiento para PostgreSQL: relacione Azure Database for PostgreSQL - Servidor flexible con las certificaciones y atestaciones de cumplimiento pertinentes antes de procesar datos regulados. Para obtener más información, consulte Conformidad en Azure Database for PostgreSQL.

  • Aplica bloqueos de recursos a los servidores en producción: usa bloqueos de administración en los servidores flexibles de PostgreSQL en producción y en los recursos dependientes para reducir la eliminación accidental o los cambios de configuración perjudiciales. Para obtener más información, consulte Proteger los recursos de Azure con un bloqueo.

  • Etiquetar recursos de PostgreSQL para la gobernanza: aplique etiquetas como cargas de trabajo, entorno, clasificación de datos, propietario y ámbito de cumplimiento a servidores flexibles de PostgreSQL y recursos relacionados para que los flujos de trabajo de directiva, inventario y administración de costos puedan identificar bases de datos protegidas. Para más información, consulte Uso de etiquetas para organizar los recursos de Azure.

Copia de seguridad y recuperación

Los controles de copia de seguridad y recuperación ayudan a restaurar los datos de PostgreSQL después de la eliminación accidental, daños o interrupciones regionales al cumplir los objetivos de recuperación de cargas de trabajo.

  • Configurar la retención de copia de seguridad automatizada: establezca el período de retención de copia de seguridad de 7 a 35 días en función de los requisitos de recuperación a un momento dado y compruebe que la ventana de retención coincide con las necesidades de recuperación de la carga de trabajo. Para más información, consulte Copia de seguridad y restauración en Azure Database for PostgreSQL.

  • Habilitar la copia de seguridad con redundancia geográfica para la recuperación regional: configure la copia de seguridad con redundancia geográfica al crear el servidor si el plan de recuperación ante desastres requiere funcionalidad de restauración en la región emparejada de Azure. Para obtener más información, consulte Recuperación ante desastres geográfica en Azure Database for PostgreSQL.

  • Configurar la alta disponibilidad para cargas de trabajo críticas: use configuraciones de alta disponibilidad para aprovisionar una réplica en espera y reducir el tiempo de inactividad durante errores de zona o infraestructura. Para obtener más información, consulte Configuración de la alta disponibilidad para Azure Database for PostgreSQL.

  • Usar réplicas de lectura para planificar la recuperación: Use réplicas de lectura para desviar el tráfico de lectura y admitir escenarios de recuperación que requieran una réplica promovida. Para obtener más información, consulte Lectura de réplicas en Azure Database for PostgreSQL.

  • Proteger los datos de copia de seguridad mediante claves administradas por el cliente: use el cifrado de claves administradas por el cliente cuando los datos de copia de seguridad y restauración deben cumplir los requisitos de administración de claves de su organización. Para obtener más información, consulte Copia de seguridad y restauración en Azure Database for PostgreSQL y Configuración del cifrado de datos en Azure Database for PostgreSQL.

  • Planear objetivos de continuidad empresarial: alinee la retención de copia de seguridad, la alta disponibilidad, las réplicas de lectura y las opciones de restauración geográfica al objetivo de tiempo de recuperación de la carga de trabajo y al objetivo de punto de recuperación. Para obtener más información, consulte Continuidad empresarial en Azure Database for PostgreSQL.

Pasos siguientes