🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónEl llavero de iOS (Keychain) y dónde guardar cada dato
5 tareas · 35 min · Principiante
El llavero de iOS es el sitio previsto para guardar secretos pequeños, como un token o una clave, y su seguridad depende de un atributo que muchas aplicaciones dejan sin pensar: cuándo puede leerse el elemento y si viaja a otros dispositivos. Esta sala lee los atributos de los elementos que guarda Vereda Ahorro (la aplicación ficticia de la Cooperativa Ahorro Vereda) en un dispositivo de pruebas, ya extraídos con autorización, y el archivo donde el código guarda cada dato. Se aprende a distinguir las opciones de accesibilidad, a leer qué significa «solo en este dispositivo» y a detectar el dato sensible que acabó en el sitio equivocado. Todo es lectura, sin ejecutar nada.
Objetivo de la sala
El llavero de iOS es el sitio previsto para guardar secretos pequeños, como un token o una clave, y su seguridad depende de un atributo que muchas aplicaciones dejan sin pensar: cuándo puede leerse el elemento y si viaja a otros dispositivos. Esta sala lee los atributos de los elementos que guarda Vereda Ahorro (la aplicación ficticia de la Cooperativa Ahorro Vereda) en un dispositivo de pruebas, ya extraídos con autorización, y el archivo donde el código guarda cada dato. Se aprende a distinguir las opciones de accesibilidad, a leer qué significa «solo en este dispositivo» y a detectar el dato sensible que acabó en el sitio equivocado. Todo es lectura, sin ejecutar nada.Cada elemento del llavero lleva un atributo de accesibilidad que fija cuándo se puede leer. WhenUnlocked permite la lectura solo con el dispositivo desbloqueado. AfterFirstUnlock permite la lectura desde el primer desbloqueo después del arranque y hasta que se reinicie, incluso con la pantalla bloqueada: es lo que necesita una aplicación que refresca datos en segundo plano. Existe también una opción «Always» que permite leer siempre y que Apple marca como obsoleta.
La elección es un equilibrio entre protección y funcionamiento: se elige la más estricta que no rompa lo que la aplicación necesita.
Responde para continuar
Una aplicación necesita leer un token en segundo plano con la pantalla bloqueada. ¿Qué accesibilidad es razonable?
Ver pista de ayuda
La más estricta que no rompa el funcionamiento. Una opción rompe el segundo plano; otra es la obsoleta.
En una revisión se lista cada elemento con su accesibilidad. El que usa la opción obsoleta «Always» se puede leer incluso con el dispositivo bloqueado y recién arrancado, así que protege menos que cualquiera de las otras. Es hallazgo, y más cuanto más valioso sea lo que guarda. Se anota el servicio, la cuenta y el atributo, nunca el contenido.
Abre el laboratorio y lee los atributos de los elementos del llavero.
Responde para continuar
¿Qué cuenta del llavero se guardó con la accesibilidad obsoleta que permite leerla siempre?
Ver pista de ayuda
Recorre la tercera columna de la tabla; solo un valor es «siempre».
Las variantes ThisDeviceOnly de la accesibilidad impiden que el elemento viaje a otro aparato: no se restaura en un dispositivo nuevo a partir de una copia ni se sincroniza. Para un token de sesión o una clave atada a un aparato, es lo esperado. El costo de usabilidad es que, al cambiar de teléfono, hay que volver a iniciar sesión. Esa molestia es el precio de que un secreto no salga del dispositivo.
Responde para continuar
El token de refresco usa AfterFirstUnlockThisDeviceOnly. ¿Qué significa la parte final del nombre?
Ver pista de ayuda
«This device only» habla de a dónde puede ir el elemento, no de quién lo lee.
El llavero está pensado para secretos; las preferencias de la aplicación (UserDefaults) están pensadas para ajustes. Guardar el tema o el idioma ahí es correcto. Guardar un código de recuperación, un token o una clave deja ese dato en un archivo sin protección especial, que viaja en las copias de seguridad del dispositivo.
Lee el archivo que describe dónde guarda cada dato el código.
Responde para continuar
¿Qué archivo guarda un código de recuperación de cuenta en las preferencias de la aplicación?
Ver pista de ayuda
Mira qué guarda cada archivo, no cómo se llama.
Un elemento sincronizable viaja a los demás dispositivos de la misma cuenta del usuario mediante el llavero en la nube. Para contraseñas que la persona usa en todos sus aparatos es una ventaja. Para un token que autoriza pagos desde la aplicación, es una decisión de producto con consecuencia de seguridad: la superficie pasa de un dispositivo a todos los de esa cuenta.
El informe no impone una respuesta: la señala como decisión que debe tomarse a conciencia y documentarse, y recomienda lo más restrictivo si no hay razón de negocio.
Responde para continuar
El token de pasarela es WhenUnlocked y sincronizable, sin control de acceso. ¿Cómo se redacta?
Ver pista de ayuda
Evalúa lo que cambia al sincronizar: cuántos dispositivos pueden llegar a tener el token.
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.