Kotlin Multiplatform Academy · Lección

Almacene un token de autenticación de forma segura

Un patrón práctico para persistir credenciales

Lección 4 de 413 pasos

Almacene un token de autenticación de forma segura es una lección gratuita de Kotlin Multiplatform Academy en CoddyKit. Esta es la lección 4 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 Kotlin Multiplatform Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Kotlin Multiplatform Academy incluye 4 lecciones en total.

Los tokens necesitan un lugar

Después de iniciar sesión, su aplicación conserva un auth token que debe recordar entre reinicios. El lugar donde lo guarde es muy importante. 🔐

Plain Settings no es seguro

Regular Settings almacena los valores en texto plano. No hay problema para un tema, pero resulta arriesgado para un token que concede acceso a la cuenta.

Almacenamiento cifrado

Para los secretos, use almacenamiento encrypted proporcionado por la plataforma: Keychain en iOS y EncryptedSharedPreferences en Android.

Ocúltelo tras una interfaz

Defina una pequeña interfaz compartida TokenStore para que commonMain nunca sepa qué backend seguro utiliza cada plataforma.

interface TokenStore {
    fun save(token: String)
    fun read(): String?
    fun clear()
}

expect para la implementación

Declare la factory con expect en commonMain. Cada plataforma proporciona su versión segura con actual.

expect fun createTokenStore(): TokenStore

Guardar después de iniciar sesión

Justo después de iniciar sesión correctamente, escriba el token mediante su store compartido. La interfaz de usuario nunca accede directamente al almacenamiento.

fun onLogin(store: TokenStore, token: String) {
    store.save(token)
}

Leer al iniciar

Al iniciar la aplicación, lea el token para decidir si el usuario ya ha signed in o debe ver la pantalla de inicio de sesión.

val loggedIn = store.read() != null

Adjuntar a las solicitudes

Proporcione el token a su cliente de Ktor como una cabecera Bearer para que cada llamada autenticada lo incluya automáticamente.

header("Authorization", "Bearer " + token)

Borrar al cerrar sesión

Cuando el usuario cierre sesión, clear el token para que nunca pueda reutilizarse. Borre siempre las credenciales de forma deliberada.

fun onLogout(store: TokenStore) {
    store.clear()
}

Nunca registre tokens

Mantenga los tokens fuera de los registros y los informes de errores. Un secret filtrado en un archivo de registro es tan peligroso como almacenarlo en texto plano.

Un patrón para ambas aplicaciones

Este patrón de expect/actual mantiene limpio el código compartido, mientras cada plataforma gestiona los secretos de forma segura y nativa.

Comprobación rápida

Confirmemos el enfoque de almacenamiento seguro.

Resumen

Almacena los tokens en el almacenamiento seguro de la plataforma mediante un TokenStore compartido, los guarda después de iniciar sesión, los borra al cerrar sesión y nunca registra secretos. ¡Con esto termina el curso! 🎉

Gratis para empezar

Aprende Kotlin con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
30
Lecciones
120

Preguntas frecuentes

¿La lección «Almacene un token de autenticación de forma segura» es gratis?

Sí — el texto completo de «Almacene un token de autenticación de forma segura» 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 Kotlin Multiplatform Academy, actualiza a CoddyKit PRO. El curso de Kotlin Multiplatform Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Almacene un token de autenticación de forma segura»?

Un patrón práctico para persistir credenciales Practicas Kotlin Multiplatform 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 Kotlin Multiplatform Academy?

No se requiere experiencia previa. Kotlin Multiplatform 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 4 de 4.

¿Cuánto tiempo toma la lección «Almacene un token de autenticación de forma segura»?

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 Kotlin Multiplatform Academy?

Sí. Cada lección de Kotlin Multiplatform 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

  1. Por qué necesita una abstracción de ajustes
  2. Lea y escriba valores tipados
  3. Valores predeterminados y borrado de claves
  4. Almacene un token de autenticación de forma segura
← Volver a Kotlin Multiplatform Academy