Control de acceso y cifrado
Proteja los datos en reposo
Control de acceso y cifrado es una lección gratuita de Cyber Security Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cyber Security Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cyber Security Academy incluye 4 lecciones en total.
Protección de los datos en reposo
Las bases de datos contienen los activos más valiosos, por lo que dos controles son especialmente importantes: el control de acceso (quién puede tocar los datos) y el cifrado (hacer que los datos sean inútiles si son robados).
Juntos protegen los datos mientras el sistema está en funcionamiento y también si se extraen discos o copias de seguridad.
Autenticación frente a autorización
Mantenga diferenciadas estas dos ideas:
- La autenticación demuestra quién es usted (inicio de sesión, certificado o token de IAM).
- La autorización decide qué puede hacer una vez identificado.
Una seguridad sólida de la base de datos necesita ambas: identidades verificadas y permisos estrictamente delimitados.
Principio de mínimo privilegio
Conceda a cada cuenta únicamente los permisos que necesite y nada más. Un servicio de informes debería tener acceso de solo lectura; una aplicación que escribe no debería poder ejecutar DROP sobre las tablas.
CREATE ROLE report_reader;
GRANT SELECT ON sales.* TO report_reader;
GRANT report_reader TO 'analytics_svc'@'%';Control de acceso basado en roles
El RBAC agrupa los permisos en roles y asigna esos roles a los usuarios. Esto escala mejor que conceder privilegios usuario por usuario y facilita las auditorías.
- Defina roles:
read_only,app_writer,dba. - Asigne usuarios a los roles.
- Revise periódicamente la pertenencia a los roles.
Seguridad a nivel de fila y columna
El control detallado limita el acceso dentro de una tabla.
- A nivel de columna: oculte las columnas de salario o SSN a determinados roles.
- Seguridad a nivel de fila (RLS): cada arrendatario solo ve sus propias filas.
-- PostgreSQL row-level security
ALTER TABLE orders ENABLE ROW LEVEL SECURITY;
CREATE POLICY tenant_isolation ON orders
USING (tenant_id = current_setting('app.tenant')::int);Cifrado en reposo
El cifrado en reposo protege los datos almacenados en disco. Si alguien roba la unidad o un archivo de copia de seguridad, su contenido resulta ilegible sin la clave.
Entre las opciones se incluyen el cifrado de disco completo, el cifrado del sistema de archivos y el cifrado transparente de datos (TDE) nativo de la base de datos.
Cifrado transparente de datos
TDE cifra automáticamente los archivos de la base de datos. Las aplicaciones no necesitan cambios; el motor cifra al escribir y descifra al leer. Protege frente al robo de archivos, pero no frente a un atacante que ya tenga una sesión válida en la base de datos.
-- SQL Server example concept
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_256
ENCRYPTION BY SERVER CERTIFICATE tde_cert;
ALTER DATABASE appdb SET ENCRYPTION ON;Cifrado a nivel de columna
Para campos especialmente sensibles (números de tarjeta y datos de salud), cifre las columnas individuales. El texto sin formato nunca permanece en la base de datos, ni siquiera para un administrador de bases de datos.
Desventaja: las columnas cifradas son difíciles de indexar y buscar, por lo que debe aplicarlo de forma selectiva.
Cifrado en tránsito
Los datos también necesitan protección durante la transmisión. Exija TLS para todas las conexiones de clientes con la base de datos, de modo que las credenciales y los conjuntos de resultados no puedan interceptarse.
-- PostgreSQL: force SSL in pg_hba.conf
hostssl appdb webapp 0.0.0.0/0 scram-sha-256
-- reject non-TLS:
hostnossl appdb all 0.0.0.0/0 rejectGestión de claves
El cifrado solo es tan sólido como la gestión de sus claves. No almacene nunca las claves junto a los datos que protegen.
- Utilice un servicio de gestión de claves (KMS) o un HSM.
- Rote las claves según un calendario.
- Separe las responsabilidades: el administrador de la base de datos no debería custodiar también la clave maestra.
Cómo encaja todo
Un modelo por capas para los datos en reposo:
- Autentique cada conexión (TLS y credenciales sólidas).
- Autorice mediante RBAC y mínimo privilegio.
- Aplique RLS y seguridad a nivel de columna cuando necesite un control detallado.
- Cifre los datos en reposo (TDE) y, específicamente, las columnas sensibles.
- Gestione las claves en un KMS separado de la base de datos.
Comprobación rápida
Analice frente a qué amenazas protege cada control.
Resumen
Los datos en reposo se protegen combinando el control de acceso y el cifrado:
- Distinga la autenticación de la autorización.
- Aplique el mínimo privilegio y RBAC, además de seguridad a nivel de fila y columna cuando sea necesario.
- Cifre los datos en reposo (TDE y a nivel de columna) y en tránsito (TLS).
- Gestione las claves por separado en un KMS y rótelas.
Preguntas frecuentes
¿La lección «Control de acceso y cifrado» es gratis?
Sí — el texto completo de «Control de acceso y cifrado» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cyber Security Academy, actualiza a CoddyKit PRO. El curso de Cyber Security Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Control de acceso y cifrado»?
Proteja los datos en reposo Practicas Cyber Security Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Cyber Security Academy?
No se requiere experiencia previa. Cyber Security Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Control de acceso y cifrado»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Cyber Security Academy?
Sí. Cada lección de Cyber Security Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Defensa contra la inyección SQL
- Control de acceso y cifrado
- Auditoría y supervisión
- Seguridad de copias de seguridad y recuperación