- Base de datos›
- Amazon RDS›
- Características
Seguridad de Amazon RDS
Más información sobre las características de seguridad de Amazon RDS
Amazon RDS es un servicio de base de datos relacional administrado que le brinda la capacidad de elegir entre ocho motores de bases de datos populares, entre los que se incluyen Amazon Aurora edición compatible con PostgreSQL, Amazon Aurora edición compatible con MySQL, RDS para PostgreSQL, RDS para MySQL, RDS para MariaDB, RDS para SQL Server, RDS para Oracle y RDS para Db2.
Amazon RDS y Amazon Aurora ofrecen un conjunto de características para garantizar que sus datos se almacenen y accedan a ellos de forma segura. Ejecute su base de datos en Amazon Virtual Private Cloud (VPC) para aislarla a nivel de red. Utilice grupos de seguridad para controlar qué direcciones IP o instancias de Amazon EC2 pueden conectarse a sus bases de datos. Este firewall integrado impide el acceso a la base de datos, excepto a través de las reglas que especifique.
Utilice las políticas de AWS Identity and Access Management (IAM) para asignar permisos que determinen quién puede administrar los recursos de Amazon RDS. Utilice las características de seguridad de su motor de base de datos para controlar quién puede iniciar sesión en las bases de datos, tal como lo haría si la base de datos estuviera en su red local. También puede asignar usuarios de la base de datos a roles de IAM para el acceso federado.
Utilice conexiones de seguridad de capa de sockets seguros y capa de transporte (SSL/TLS) para cifrar los datos en tránsito. Cifre en reposo el almacenamiento y las copias de seguridad de su base de datos con Amazon Key Management Service (KMS). Supervise la actividad de la base de datos e intégrela con aplicaciones de seguridad de bases de datos de socios con Database Activity Streams.
Cifrado de datos en reposo
Cifrado de datos en reposo
Amazon RDS cifra sus bases de datos con claves que usted administra con AWS Key Management Service (KMS). En una instancia de base de datos que se ejecute con cifrado de Amazon RDS, los datos almacenados en reposo en el almacenamiento subyacente están cifrados, al igual que sus backups automatizados, las réplicas de lectura y los snapshots. El cifrado de Amazon RDS utiliza el algoritmo de cifrado AES-256 estándar del sector para cifrar los datos en el servidor que aloja la instancia de Amazon RDS.
Amazon RDS también admite el cifrado de datos transparente (TDE) para SQL Server (SQL Server Enterprise Edition y Standard Edition) y Oracle (opción Oracle Advanced Security en Oracle Enterprise Edition). Con TDE, el servidor de bases de datos cifra automáticamente los datos antes de escribirlos en el almacenamiento y los descifra de manera automática cuando se leen desde el almacenamiento.
Cifrado de datos en tránsito
Cifrado de datos en tránsito
Cifre las comunicaciones entre la aplicación y la instancia de base de datos mediante SSL/TLS. Al aprovisionar una instancia de base de datos, Amazon RDS crea un certificado SSL e instala el certificado en la instancia. Para MySQL, inicie el cliente mysql con el parámetro --ssl_ca para hacer referencia a la clave pública con el fin de cifrar las conexiones. Para SQL Server, descargue la clave pública e importe el certificado a su sistema operativo Windows. RDS para Oracle utiliza el cifrado de red nativo de Oracle con una instancia de base de datos. Solo tiene que agregar la opción de cifrado de red nativa a un grupo de opciones y asociar ese grupo de opciones a la instancia de base de datos. En cuanto se establece una conexión cifrada, los datos transferidos entre la Instancia de base de datos y su aplicación se cifrarán durante el proceso de transferencia. También puede exigir a su instancia de base de datos que acepte únicamente conexiones cifradas.
Control de acceso
Control de acceso
Amazon RDS se integra en AWS Identity and Access Management (IAM) y le ofrece la posibilidad de controlar las acciones que los usuarios y grupos de AWS IAM pueden realizar en recursos específicos (por ejemplo, instancias de base de datos, instantáneas de base de datos, grupos de parámetros de base de datos, suscripciones a eventos de base de datos y grupos de opciones de base de datos). Además, puede etiquetar los recursos y controlar las acciones que los usuarios y grupos de IAM adoptarán en grupos de recursos que tengan la misma etiqueta (y valor de etiqueta). Para obtener más información sobre la integración de IAM, consulte la documentación de autenticación de base de datos de IAM.
Además, puede etiquetar los recursos de Amazon RDS y controlar las acciones que pueden realizar los usuarios y grupos de IAM en grupos de recursos que tengan la misma etiqueta y valor asociado. Por ejemplo, puede configurar las reglas de IAM para garantizar que los desarrolladores puedan modificar las instancias de base de datos de “Desarrollo”, pero de tal manera que solo los administradores de la base de datos puedan modificar las instancias de base de datos de “Producción”.
Cuando cree por primera vez una instancia de base de datos en Amazon RDS, creará una cuenta de usuario principal, que se utilizará únicamente en el contexto de Amazon RDS para controlar el acceso a sus instancias de base de datos. La cuenta de usuario principal es una cuenta de usuario de base de datos nativa que le permite iniciar sesión en su instancia de base de datos con todos los privilegios de base de datos. Cuando cree la instancia de base de datos, puede especificar el nombre del usuario principal y la contraseña que desea asociarle. Una vez que haya creado su instancia de base de datos, podrá conectarse a la base de datos mediante las credenciales del usuario principal. Posteriormente, puede crear cuentas de usuario adicionales, de forma que pueda restringir quién obtiene acceso a su instancia de base de datos.
Aislamiento de redes y firewall de bases de datos
Aislamiento de redes y firewall de bases de datos
Mediante Amazon Virtual Private Cloud (VPC), puede aislar las instancias de base de datos en su propia red virtual y conectarlas con su infraestructura de TI existente mediante una VPN IPsec cifrada conforme a las normas del sector.
Amazon VPC le permite aislar sus instancias de base de datos al especificar el rango de IP que desea usar y conectarse a su infraestructura de TI existente a través de una VPN IPsec cifrada estándar del sector. La ejecución de Amazon RDS en una VPC le permite tener una instancia de base de datos dentro de una subred privada. También puede configurar una puerta de enlace privada virtual que extienda su red corporativa a su VPC y que permita el acceso a la instancia de base de datos de Amazon RDS en dicha VPC. Consulte la Guía del usuario de Amazon VPC para obtener más detalles. Es posible acceder a las instancias de bases de datos implementadas en una Amazon VPC desde Internet o desde las instancias de Amazon EC2 que se encuentran afuera de la VPC a través de una VPN o de hosts bastión que se pueden lanzar en una subred pública. Para utilizar un host bastión, tiene que configurar una subred pública con una instancia de EC2 que actúa como bastión SSH. Esta subred pública debe tener una puerta de enlace de Internet y reglas de enrutamiento que permitan que el tráfico se dirija a través del host SSH, que debe luego reenviar las solicitudes a la dirección IP privada de su instancia de base de datos de Amazon RDS. Es posible utilizar grupos de seguridad de base de datos para ayudar a proteger las instancias de base de datos incluidas en Amazon VPC. Además, el tráfico de red que entra en cada subred y sale de ella puede autorizarse o denegarse por medio de ACL de la red. Todo el tráfico de red que entre o salga de su Amazon VPC a través de la conexión de VPN IPsec puede inspeccionarse mediante su infraestructura de seguridad en las instalaciones, lo que incluye firewall de red y sistemas de detección de intrusos.
Database Activity Streams
Database Activity Streams
Más allá de las amenazas de seguridad externas, las bases de datos administradas deben brindar protección contra los riesgos internos de los administradores de bases de datos (DBA). Database Activity Streams, actualmente compatible con Amazon Aurora y Amazon RDS para Oracle, proporciona una secuencia de datos en tiempo real de la actividad de la base de datos en su base de datos relacional. Cuando se integra con herramientas de supervisión de la actividad de la base de datos de terceros, puede supervisar y auditar la actividad de la base de datos a fin de proporcionar protecciones para la base de datos y cumplir con los requisitos regulatorios y de conformidad.
Database Activity Streams protege su base de datos de las amenazas internas mediante la implementación de un modelo de protección que controla el acceso del DBA a la secuencia de actividad de la base de datos. Por lo tanto, la recopilación, la transmisión, el almacenamiento y el procesamiento posterior del flujo de actividad de la base de datos están fuera del acceso de los DBA que administran la base de datos.
La secuencia se envía a una secuencia de datos de Amazon Kinesis que se crea en nombre de su base de datos. Desde Kinesis Data Firehose, Amazon CloudWatch o las aplicaciones de los socios, como IBM Security Guardium, pueden consumir la secuencia de actividad de la base de datos para la administración del cumplimiento. Con estas aplicaciones de socios es posible usar la información de secuencia de actividades de bases de datos para generar alertas y controlar toda la actividad de su base de datos de Amazon Aurora.
Puede obtener más información sobre el uso de Database Activity Streams para las ediciones de Aurora compatibles con PostgreSQL y MySQL en la página de documentación y para Amazon RDS para Oracle en la página de documentación.
Conformidad
Conformidad
Amazon RDS ofrece a sus clientes un sólido marco de conformidad y herramientas y medidas de seguridad avanzadas para evaluar si se cumplen los requisitos legales y normativos aplicables, así como para cumplir dichos requisitos y demostrarlo. Los clientes deben revisar el Modelo de responsabilidad compartida de AWS y tener en cuenta las responsabilidades de Amazon RDS y las responsabilidades de los clientes. Los clientes también pueden usar AWS Artifact para acceder a los informes de auditoría de RDS y realizar su evaluación de las responsabilidades de control.
Para obtener más información, visite la página de cumplimiento de AWS.
Preguntas frecuentes
¿Dónde puedo obtener información sobre las prácticas recomendadas de seguridad en Amazon RDS?
Amazon RDS ofrece orientación sobre prácticas recomendadas mediante el análisis de las métricas de configuración y uso de las instancias de bases de datos. Las recomendaciones abarcan áreas como la seguridad, el cifrado, la IAM y la VPC. Puede analizar las sugerencias disponibles y realizar una acción sugerida de inmediato, programarla para su próximo período de mantenimiento o descartarla por completo.
¿Qué es Amazon Virtual Private Cloud (VPC) y cómo funciona con Amazon RDS?
Amazon VPC le permite crear un entorno de red virtual en una sección privada y aislada de la nube de AWS en la que puede ejercer un control total sobre aspectos como los rangos de direcciones IP privadas, las subredes, las tablas de enrutamiento y las puertas de enlace de red. Con Amazon VPC, puede definir una topología de red virtual y personalizar la configuración de la red para que se parezca a una red IP tradicional que podría operar en su propio centro de datos.
Una manera en la que puede aprovechar VPC es cuando desea ejecutar una aplicación web orientada al público, a la vez que mantiene servidores de backend no accesibles públicamente en una subred privada. Puede crear una subred pública que tenga acceso a Internet para los servidores web y colocar sus instancias de bases de datos de backend de Amazon RDS en una subred privada sin acceso a Internet. Para obtener más información sobre Amazon VPC, consulte la Guía del usuario de Amazon Virtual Private Cloud.
¿Qué diferencia hay entre utilizar Amazon RDS en una VPC y utilizarla en la plataforma EC2-Classic (no VPC)?
Si su cuenta de AWS se creó antes del 4 de diciembre de 2013, es posible que pueda ejecutar Amazon RDS en un entorno Amazon Elastic Compute Cloud (EC2)-Classic. La funcionalidad básica de Amazon RDS es la misma, independientemente de que se utilice EC2-Classic o EC2-VPC. Amazon RDS administra las copias de seguridad, la realización de revisiones del software, la detección automática de errores, las réplicas de lectura y la recuperación, independientemente de que las instancias de bases de datos se hayan implementado dentro o fuera de una VPC. Para obtener más información sobre las diferencias entre EC2-Classic y EC2-VPC, consulte la documentación de EC2.
¿Qué es un grupo de subredes de bases de datos y por qué debería utilizar uno?
Un grupo de subredes de bases de datos es un conjunto de subredes que usted puede designar para las instancias de bases de datos de Amazon RDS en una VPC. Cada grupo de subredes de bases de datos debe tener al menos una subred para cada zona de disponibilidad en una región determinada. Al crear una instancia de base de datos en una VPC, tendrá que seleccionar un grupo de subred de base de datos. A continuación, Amazon RDS utilizará dicho grupo y su zona de disponibilidad preferida para seleccionar una subred y una dirección IP dentro de dicha subred. Amazon RDS crea y asocia una interfaz de red elástica a su instancia de base de datos con dicha dirección IP.
Tenga en cuenta que se recomienda utilizar el nombre de DNS para conectarse a la instancia de base de datos, ya que la dirección IP subyacente puede cambiar (por ejemplo, durante una conmutación por error).
Para los despliegues multi-AZ, definir una subred para todas las zonas de disponibilidad en una región permite a Amazon RDS crear una nueva instancia en espera en otra zona de disponibilidad, en caso de que surja la necesidad. Hacer esto es necesario incluso para los despliegues Single-AZ, en caso de que desee convertirlos en despliegues Multi-AZ en algún punto.
¿Cómo puedo crear una instancia de base de datos de Amazon RDS en una VPC?
Para ver un procedimiento que lo guíe a lo largo del proceso, consulte Creación de una instancia de base de datos en una VPC en la Guía del usuario de Amazon RDS.
¿Cómo puedo controlar el acceso a la red de mi(s) instancia(s) de base de datos?
Visite la sección sobre grupos de seguridad de la Guía del usuario de Amazon RDS para obtener información sobre las diferentes maneras en que se puede controlar el acceso a sus instancias de bases de datos.
¿Cómo me conecto a una instancia de base de datos de Amazon RDS en una VPC?
Se puede obtener acceso a las instancias de bases de datos dentro de una VPC mediante las instancias de EC2 implementadas en la misma VPC. Si estas instancias EC2 se implementan en una subred pública con direcciones IP elásticas asociadas, puede obtener acceso a las instancias EC2 a través de Internet. Es posible acceder a las instancias de bases de datos desplegadas en una VPC desde Internet o desde las instancias de EC2 que se encuentran afuera de la VPC a través de una VPN o de un host bastión que se pueden lanzar en una subred pública o mediante la opción de acceso público de Amazon RDS:
- Para usar un host bastión, necesitará configurar una subred pública con una instancia de EC2 que actúa como un SSH bastión. Esta subred pública debe tener una puerta de enlace de Internet y reglas de enrutamiento que permitan que el tráfico se dirija a través del host SSH, que debe luego reenviar las solicitudes a la dirección IP privada de su instancia de base de datos de Amazon RDS.
- Para utilizar la conectividad pública, solo tiene que crear las instancias de bases de datos con la opción de acceso público habilitada. Con la opción de acceso público habilitada, será posible obtener acceso sin restricciones a las instancias de base de datos de una VPC desde fuera de la VPC de manera predeterminada. Esto significa que no es necesario configurar una VPN o un host de protección para permitir el acceso a las instancias.
También puede configurar una puerta de enlace de VPN que extienda su red corporativa a su VPC y que permita el acceso a la instancia de base de datos de Amazon RDS en dicha VPC. Consulte la Guía del usuario de Amazon VPC para obtener más detalles.
Recomendamos encarecidamente que use el nombre DNS para conectarse a la instancia de base de datos, ya que la dirección IP subyacente puede cambiar (por ejemplo, durante una conmutación por error).
¿Puedo trasladar mis instancias de base de datos existentes fuera de la VPC a mi VPC?
Si su instancia de base de datos no es una VPC, puede usar la consola de administración de AWS para trasladar su instancia de base de datos a una VPC con facilidad. Para obtener más detalles, consulte la Guía del usuario de Amazon RDS. También puede realizar una instantánea de la instancia de base de datos fuera de la VPC y restablecerla en la VPC si especifica el grupo de subred de base de datos que desea utilizar. Otra opción es realizar también una operación "Restore to Point in Time".
¿Puedo trasladar mis instancias de base de datos existentes de la VPC interior a la VPC exterior?
No se admite la migración directa de instancias de bases de datos desde adentro hacia fuera de la VPC. Por cuestiones de seguridad, una instantánea de base de datos de una instancia de base de datos dentro de una VPC no se puede restablecer fuera de la VPC. Sucede lo mismo con la funcionalidad "Restore to Point in Time".
¿Qué precauciones debo tomar para garantizar que mi aplicación pueda obtener acceso a mis instancias de base de datos contenidas en una VPC?
Usted se encarga de modificar las tablas de enrutamiento y las ACL de redes en la VPC para asegurarse de que se pueda acceder a las instancias de bases de datos desde sus instancias cliente en la VPC. Para los despliegues multi-AZ, después de una conmutación por error, la instancia de EC2 cliente y la instancia de base de datos de Amazon RDS pueden estar en diferentes zonas de disponibilidad. Debe configurar las ACL de redes para garantizar que sea posible la comunicación entre las zonas de disponibilidad.
¿Puedo cambiar el grupo de subred de base de datos de mi instancia de base de datos?
Se puede actualizar un grupo de subredes de base de datos existente para agregar más subredes para las zonas de disponibilidad existentes o para nuevas zonas de disponibilidad agregadas desde la creación de la instancia de base de datos. La eliminación de subredes de un grupo de subred de base de datos puede provocar que las instancias no estén disponibles si se están ejecutando en una zona de disponibilidad en particular que se elimina del grupo de subredes. Consulte la Guía del usuario de Amazon RDS para obtener más información.
¿Qué es una cuenta de usuario principal de Amazon RDS y en qué se diferencia de una cuenta de AWS?
Para empezar a utilizar Amazon RDS, necesitará una cuenta de desarrollador de AWS. Si no cuenta con una antes de registrarse en Amazon RDS, se le pedirá que cree una cuando comience el proceso de registro. La cuenta de usuario principal es diferente de la cuenta de desarrollador de AWS y se utiliza solo en el contexto de Amazon RDS para controlar el acceso a sus instancias de bases de datos. La cuenta de usuario principal es una cuenta de usuario de base de datos nativa que puede utilizar para conectarse a su instancia de base de datos.
Cuando cree la instancia de base de datos, puede especificar el nombre del usuario principal y la contraseña que desea asociarle. Una vez que haya creado su instancia de base de datos, podrá conectarse a la base de datos mediante las credenciales del usuario principal. Es posible que posteriormente desee crear cuentas de usuario adicionales, de forma que pueda restringir quién obtiene acceso a su instancia de base de datos.
¿Qué privilegios se conceden al usuario principal de mi instancia de base de datos?
Para MySQL, los privilegios predeterminados del usuario principal son los siguientes: create, drop, references, event, alter, delete, index, insert, select, update, create temporary tables, lock tables, trigger, create view, show view, alter routine, create routine, execute, trigger, create user, process, show databases, grant option.
Para Oracle, al usuario principal se le otorga el rol “dba”. El usuario principal hereda la mayoría de los privilegios asociados al rol. Consulte la Guía del usuario de Amazon RDS para obtener la lista de privilegios restringidos y las alternativas correspondientes para llevar a cabo tareas administrativas que puedan requerir estos privilegios.
Para SQL Server, a un usuario que crea una base de datos se le otorga la función "db_owner". Consulte la Guía del usuario de Amazon RDS para obtener la lista de privilegios restringidos y las alternativas correspondientes para llevar a cabo tareas administrativas que puedan requerir estos privilegios.
¿Existen diferencias en la administración de usuarios con Amazon RDS?
No, todo funciona de la misma forma a la que está acostumbrado al utilizar una base de datos relacional que usted mismo administra.
¿Los programas que se encuentran en ejecución en los servidores de mi propio centro de datos pueden obtener acceso a las bases de datos de Amazon RDS?
Sí. Debe activar la capacidad para obtener acceso a su base de datos a través de Internet mediante la configuración de grupos de seguridad. Puede autorizar el acceso únicamente a las direcciones IP, los intervalos de direcciones IP o las subredes de los servidores de su propio centro de datos.
¿Puedo cifrar las conexiones entre mi aplicación?
Sí, esta opción es compatible con todos los motores de Amazon RDS. Amazon RDS genera un certificado SSL/TLS para cada instancia de base de datos. En cuanto se establece una conexión cifrada, los datos transferidos entre la Instancia de base de datos y su aplicación se cifrarán durante el proceso de transferencia. Aunque SSL ofrece beneficios de seguridad, debe ser consciente de que el cifrado SSL/TLS es una operación que realiza un uso intensivo de la infraestructura informática y que, por lo tanto, aumentará la latencia de su conexión a la base de datos. Debe tener en cuenta que la compatibilidad con SSL/TLS de Amazon RDS se restringe al cifrado de la conexión entre la aplicación y la instancia de base de datos. No se debe depender de ella para la autenticación de la propia instancia de base de datos.
Para obtener detalles sobre el establecimiento de una conexión cifrada con Amazon RDS, consulte la Guía del usuario de MySQL de Amazon RDS, la Guía del usuario de MariaDB, la Guía del usuario de PostgreSQL o la Guía del usuario de Oracle.
¿Puedo cifrar datos en reposo en mis bases de datos de Amazon RDS?
Amazon RDS es compatible con el cifrado en reposo para todos los motores de bases de datos mediante el uso de claves que usted administre con AWS Key Management Service (KMS). En una instancia de base de datos que se ejecute con cifrado de Amazon RDS, los datos almacenados en reposo en el almacenamiento subyacente están cifrados, al igual que sus backups automatizados, las réplicas de lectura y los snapshots. El cifrado y el descifrado se administran de forma transparente. Para obtener más información sobre el uso de KMS con Amazon RDS, consulte la Guía del usuario de Amazon RDS.
También puede añadir cifrado a una instancia o clúster de base de datos descifrado con anterioridad mediante la creación de una instantánea de base de datos y, a continuación, una copia de esa instantánea, para posteriormente especificar una clave de cifrado de KMS. Después, puede restaurar una instancia de base de datos o clúster de base de datos cifrados a partir de la instantánea cifrada.
Amazon RDS para Oracle y SQL Server admiten las tecnologías de cifrado de datos transparente (TDE) de esos motores. Para obtener más información, consulte las secciones de la Guía del usuario de Amazon RDS sobre Oracle y SQL Server.
¿Puedo integrar mi base de datos de Amazon RDS para Oracle con AWS CloudHSM?
No, una instancia de Oracle en Amazon RDS no se puede integrar con AWS CloudHSM. Para utilizar el cifrado de datos transparente (TDE) con AWS CloudHSM, la base de datos Oracle debe estar instalada en Amazon EC2.
¿Cómo puedo controlar las acciones que mis sistemas y usuarios pueden ejecutar en recursos específicos de Amazon RDS?
Puede controlar las acciones que los usuarios y los grupos de AWS IAM pueden ejecutar en los recursos de Amazon RDS. Para ello, consulte los recursos de Amazon RDS en las políticas de IAM de AWS que aplica a los usuarios y los grupos. Los recursos de Amazon RDS a los que se puede hacer referencia en una política de IAM de AWS incluyen instancias de base de datos, instantáneas de base de datos, réplicas de lectura, grupos de seguridad de base de datos, grupos de opciones de base de datos, grupos de parámetros de base de datos, suscripciones a eventos y grupos de subred de base de datos.
Además, puede etiquetar tales recursos para agregarles más metadatos. Mediante el uso de etiquetas, puede categorizar sus recursos (por ejemplo, instancias de base de datos de “Desarrollo”, “Producción” o “Prueba”), así como escribir políticas de AWS IAM en las que consten los permisos (es decir, las acciones) que se pueden adoptar en los recursos con las mismas etiquetas. Para obtener más información, consulte Etiquetado de recursos de Amazon RDS.
Quiero hacer un análisis de seguridad o resolver los problemas operativos en mi implementación de Amazon RDS. ¿Puedo obtener el historial de todas las llamadas a la API de Amazon RDS realizadas en mi cuenta?
Sí. AWS CloudTrail es un servicio web que registra las llamadas a la API de AWS de su cuenta y le entrega registros. El historial de llamadas a las API de AWS creado por CloudTrail permite realizar un análisis de seguridad, un seguimiento de los cambios en los recursos y auditorías sobre la conformidad.
¿Puedo usar Amazon RDS con aplicaciones que deban cumplir los requisitos de HIPAA?
Sí, todos los motores de bases de datos de Amazon RDS cumplen con los requisitos de la HIPAA, por lo que puede utilizarlos para crear aplicaciones conformes con HIPAA y almacenar información relacionada con la atención sanitaria, incluida la información sanitaria protegida (PHI), en virtud de un acuerdo de asociación empresarial (BAA) firmado con AWS.
Si ya cuenta con un BAA, no es necesario realizar ninguna acción para empezar a utilizar los servicios en las cuentas cubiertas por dicho contrato. Si no cuenta con un BAA vigente con AWS, o si tiene preguntas acerca de las aplicaciones que cumplen con HIPAA en AWS, contáctese con
su administrador de cuentas.