¿Qué datos de una tabla son personales?
Un dato personal es cualquier información sobre una persona que se puede identificar. Saber cuáles son es el primer paso de la protección de datos, porque solo así sabes qué proteger.
Imagina la tabla de clientes de una tienda en línea. Algunas columnas hablan de personas y otras solo de la tienda. Tienes que aprender a separarlas.
Al terminar esta lección
Nota
Puedo decir qué columnas de una tabla contienen datos personales.
Palabras clave
| Palabra | Qué significa | Ejemplo |
|---|---|---|
| Dato personal | cualquier información sobre una persona que se puede identificar | |
| Persona interesada | la persona a la que se refieren los datos | |
| Identificador directo | un dato que señala a una persona por sí solo | |
| Identificador indirecto | un dato que señala a una persona solo junto con otros | city |
| Dato sensible | un dato que puede hacer mucho daño si se sabe | salud |
Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.
Un dato es personal si lleva hasta alguien
Un dato es personal si permite saber de qué persona se trata. Un nombre, un correo y un teléfono lo son claramente.
Un dato personal no tiene que ser secreto. Tu nombre en el buzón también lo es.
Lo que importa es si se puede llegar hasta la persona. El precio de un producto no habla de nadie, así que no es personal.
Ejecuta primero las dos líneas de preparación. Después mira la tabla de clientes de la tienda del laboratorio.
Aceptar el certificado del servidor
printf '[client]\nssl-verify-server-cert=0\n' > ~/.my.cnfSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Un nombre corto para la tienda
alias sql='mariadb -h db -u student -pstudent shop -t -e'Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Mirar las columnas de los clientes
sql "DESCRIBE customers"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Cuántas personas hay en la tabla
sql "SELECT COUNT(*) AS clientes, COUNT(phone) AS con_telefono FROM customers"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Ejemplo resuelto: clasificar las columnas de customers
| Columna | Tipo de dato | Por qué |
|---|---|---|
| first_name, last_name | Identificador directo | Nombran a la persona |
| Identificador directo | Es único y llega a una sola persona | |
| phone | Identificador directo | Un número lleva a su dueño |
| city, country | Identificador indirecto | Mucha gente vive en la misma ciudad |
| joined_on | Identificador indirecto | Una fecha de alta acota, junto a otros datos |
| id | Identificador indirecto | Solo lo entiende quien tiene la tabla |
Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.
Varios datos indirectos juntos señalan a una persona
Una ciudad no basta para saber quién es alguien. Una ciudad y una fecha de alta ya acotan mucho.
En la tienda de ejemplo, cuatro clientes viven en Osaka. Solo uno de ellos se dio de alta el 22 de noviembre de 2023. Esa pareja de datos señala a una sola persona.
Por eso la protección de datos mira los datos juntos y no uno a uno.
Los clientes de una ciudad
sql "SELECT id, first_name FROM customers WHERE city = 'Osaka' ORDER BY id"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
La ciudad más una fecha
sql "SELECT id, first_name FROM customers WHERE city = 'Osaka' AND joined_on = '2023-11-22'"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Un error frecuente
Advertencia
Mucha gente cree que una tabla sin nombres ya no tiene datos personales. No es cierto si lo que queda lleva hasta alguien. Quita el nombre y pregúntate si el resto aún señala a una persona. Si la respuesta es sí, sigue siendo personal.
Un dato sensible necesita más cuidado
Algunos datos pueden hacer mucho daño si salen a la luz. Son los datos sensibles: la salud, las creencias religiosas, la afiliación a un sindicato o la vida íntima.
Un dato sensible necesita más motivos para guardarse y más protección. La tienda de ejemplo no tiene ninguno. Una clínica o un gimnasio sí los tendrán.
Pruébalo: las citas de una clínica
-- Estas son las citas de una clínica dental.
-- Mira qué columnas hablan de una persona.
SELECT id, patient, city, reason FROM appointments
ORDER BY id;
-- Cambia la lista de columnas: deja solo las que no son personales.
Pruébalo: una ciudad con un solo paciente
-- ¿Cuántos pacientes hay en cada ciudad?
SELECT city, COUNT(*) AS pacientes FROM appointments
GROUP BY city
ORDER BY city;
-- Una ciudad con un solo paciente deja ver quién es.
-- Añade WHERE para ver solo las ciudades con un paciente (usa HAVING).
Para ir más allá
Elige una aplicación que uses, como una biblioteca o un club deportivo. Escribe cinco columnas que crees que guarda y clasifica cada una.
Después busca un caso en el que dos datos indirectos juntos señalen a una sola persona de tu clase. No digas quién es: basta con que sepas que ocurre.