Migración a Keycloak: Nuestro Viaje hacia una Seguridad Mejorada

Migración a Keycloak: Nuestro Viaje hacia una Seguridad Mejorada

Migración a Keycloak: Nuestro Viaje hacia una Seguridad Mejorada

Mientras continuamos construyendo PixelUnion—tu alternativa europea a Google Photos centrada en la privacidad—trabajamos constantemente para mejorar la seguridad y la experiencia del usuario. Hoy queremos compartir una actualización importante sobre nuestra migración del proveedor de identidad y qué significa para ti.


Por Qué Necesitamos un Proveedor de Identidad

Nuestra plataforma está construida sobre Immich, una increíble solución de gestión de fotos de código abierto. Sin embargo, Immich está diseñado con una filosofía específica: se enfoca en ser el mejor software de gestión de fotos, no en reinventar la gestión de identidad.

Immich no admite autenticación de dos factores (2FA) u otras características de seguridad avanzadas por diseño. Esto no es un defecto—es una decisión arquitectónica deliberada. El equipo de Immich cree, y estamos completamente de acuerdo, que ejecutar un proveedor de identidad es un trabajo complejo que debe ser manejado por software especializado mantenido por profesionales de seguridad. Esto permite a Immich concentrarse en lo que hace mejor: gestionar tus fotos y videos.

Pero como plataforma SaaS que atiende a miles de usuarios, necesitamos características de seguridad avanzadas que Immich no proporciona:

  • Autenticación de dos factores (2FA): Proteger cuentas con contraseñas de un solo uso basadas en tiempo (TOTP) desde aplicaciones autenticadoras
  • Passkeys: Autenticación moderna sin contraseña
  • Gestión avanzada de usuarios: Invitar a familia y amigos con flujos de cuenta apropiados
  • Seguridad de nivel empresarial: Cumplir con los estándares de seguridad que nuestros usuarios esperan

Por eso decidimos implementar nuestro propio proveedor de identidad.


Preguntas Frecuentes

¿Qué significa esta migración para mí?

Para la mayoría de los usuarios, la migración es transparente. Tus credenciales de cuenta permanecen iguales, y puedes continuar usando PixelUnion exactamente como antes. La principal diferencia es que ahora tienes acceso a características de seguridad mejoradas como la autenticación de dos factores.

Cuando inicies sesión, serás redirigido a nuestro nuevo sistema de inicio de sesión basado en Keycloak. Tu nombre de usuario y contraseña funcionan exactamente como antes—no se necesitan cambios de tu parte.

¿Por qué es necesaria esta migración?

Esta migración es necesaria porque:

  1. Seguridad: Immich no admite 2FA o características de seguridad avanzadas por diseño. Necesitamos estas características para proteger tus cuentas adecuadamente.
  2. Experiencia del usuario: Un proveedor de identidad externo nos permite ofrecer características como recuperación de contraseña, gestión de cuenta e invitaciones de usuarios seguras.
  3. Cumplimiento: Como servicio europeo que maneja datos personales, necesitamos gestión de identidad de nivel empresarial que cumpla con los requisitos regulatorios.
  4. Preparación para el futuro: Un proveedor de identidad dedicado nos da la flexibilidad de agregar nuevas características de seguridad tan pronto como estén disponibles.

Apoyamos la decisión de Immich de enfocarse en la gestión de fotos en lugar de la gestión de identidad. Esta separación de responsabilidades es una buena arquitectura de software, pero significa que necesitamos manejar la identidad por separado.

¿Cómo activo la autenticación de dos factores?

Ahora que hemos migrado a Keycloak, puedes activar la autenticación de dos factores para agregar una capa adicional de seguridad a tu cuenta. Así es cómo:

  1. Ve a la página de Seguridad de Cuenta PixelUnion
  2. Inicia sesión con tu nombre de usuario y contraseña
  3. En la sección Inicio de Sesión, busca Autenticación de Dos Factores o Aplicación Autenticadora
  4. Haz clic en Configurar Aplicación Autenticadora
  5. Escanea el código QR con tu aplicación autenticadora (como Aegis Authenticator, 2FAS, Google Authenticator, Microsoft Authenticator o Authy)
  6. Ingresa el código de 6 dígitos de tu aplicación para verificar
  7. Importante: Guarda tus códigos de respaldo en un lugar seguro

Para instrucciones detalladas paso a paso, consulta nuestra guía de autenticación de dos factores.

¿Por qué no tuve que restablecer mi contraseña?

¡Excelente pregunta! No tuviste que restablecer tu contraseña porque migramos exitosamente tus hashes de contraseña de Immich a Keycloak.

Así es cómo funciona y por qué es seguro:

Cómo Funciona el Hash de Contraseña

Cuando creas una cuenta, tu contraseña nunca se almacena en texto plano. En su lugar, se procesa a través de una función hash criptográfica (en este caso, bcrypt2) que convierte tu contraseña en una cadena única de caracteres. Este hash es una función unidireccional—no puedes revertirlo para obtener la contraseña original.

El Proceso de Migración

Tanto Immich como Keycloak usan el mismo algoritmo de hash de contraseña: bcrypt2 (también conocido como bcrypt con identificador de versión $2b$). Esto significa:

  1. Tu hash de contraseña de Immich está en un formato que Keycloak entiende
  2. Podemos copiar tu hash directamente de la base de datos de Immich a la base de datos de Keycloak
  3. Keycloak puede verificar tu contraseña usando el mismo hash sin necesitar la contraseña original

Por Qué Esto Es Seguro

  • Sin exposición de contraseña: Nunca vemos ni manejamos tu contraseña real—solo el hash
  • Mismo nivel de seguridad: El formato del hash es idéntico, por lo que no hay degradación de seguridad
  • Estándar de la industria: bcrypt2 es un algoritmo hash seguro y bien establecido utilizado por millones de aplicaciones
  • Sin almacenamiento en texto plano: Tu contraseña nunca se almacenó en texto plano antes, y tampoco ahora

Este enfoque de migración es una práctica estándar en la industria y es utilizado por grandes plataformas al hacer transiciones entre proveedores de identidad. Es seguro, transparente y no requiere ninguna acción de tu parte.

¿Notaré cambios al iniciar sesión?

La experiencia de inicio de sesión es muy similar a antes. Aún ingresarás tu nombre de usuario y contraseña, pero serás redirigido a nuestra página de inicio de sesión basada en Keycloak. La URL mostrará login.pixelunion.eu en lugar de tu dominio de instancia. Una vez que inicies sesión, serás redirigido sin problemas de vuelta a tu instancia de PixelUnion.

¿Qué pasa si tengo problemas para iniciar sesión después de la migración?

Si experimentas problemas al iniciar sesión:

  1. Verifica tus credenciales: Asegúrate de estar usando el mismo nombre de usuario y contraseña que antes
  2. Limpia la caché de tu navegador: A veces las páginas de inicio de sesión en caché pueden causar problemas
  3. Prueba un navegador diferente: Esto ayuda a descartar problemas específicos del navegador
  4. Verifica las extensiones del navegador: Algunos administradores de contraseñas o extensiones de seguridad pueden interferir
  5. Contacta al soporte: Si nada de lo anterior funciona, contacta a nuestro equipo de soporte—¡estamos aquí para ayudar!

¿Mis datos están seguros durante la migración?

Absolutamente. El proceso de migración:

  • No afecta tus fotos o videos: Todos tus medios permanecen intactos en tu instancia de Immich
  • Solo migra datos de autenticación: Solo transferimos credenciales de cuenta (nombre de usuario y hash de contraseña)
  • Ocurre de forma segura: La migración se realiza usando conexiones seguras y encriptadas
  • Ha sido probado a fondo: Hemos probado el proceso de migración exhaustivamente antes de implementarlo

Tu privacidad y seguridad de datos siguen siendo nuestras principales prioridades durante este proceso.

¿Necesito actualizar alguna aplicación o integración?

Aplicaciones móviles: Si estás usando la aplicación móvil de Immich, es posible que necesites cerrar sesión e iniciar sesión una vez después de la migración. Tus credenciales guardadas deberían seguir funcionando.

Claves API: Si estás usando claves API para integraciones, estas permanecen sin cambios y continúan funcionando como antes.

Integraciones de terceros: Cualquier integración que use OAuth o OpenID Connect funcionará automáticamente con el nuevo sistema Keycloak, ya que usa los mismos protocolos estándar de la industria.

¿Qué pasa con mis sesiones de inicio de sesión existentes?

Las sesiones activas pueden ser cerradas durante la migración. Esta es una medida de seguridad para asegurar que todas las sesiones estén correctamente autenticadas con el nuevo sistema. Simplemente inicia sesión nuevamente con tus credenciales existentes—no se necesita restablecer la contraseña.

¿Esto afectará a los miembros de la familia o amigos que comparten mi cuenta?

Si has compartido tus credenciales de cuenta con familiares o amigos, necesitarán usar el nuevo sistema de inicio de sesión, pero su acceso permanece igual. Recomendamos que cada persona tenga su propia cuenta para una mejor seguridad. Con Keycloak, ahora podemos soportar configuraciones multi-usuario apropiadas con cuentas individuales y permisos.

¿La 2FA es obligatoria o puedo optar por no usarla?

La autenticación de dos factores es opcional pero altamente recomendada. Recomendamos encarecidamente a todos los usuarios que activen 2FA para una seguridad de cuenta mejorada, pero no es obligatorio. Puedes activarla en cualquier momento desde tu página de Seguridad de Cuenta.

Tengo múltiples instancias de PixelUnion y mi contraseña no funciona. ¿Qué debo hacer?

Si tienes múltiples instancias de PixelUnion y descubres que tu contraseña no funciona después de la migración, esto probablemente se debe a que solo podemos migrar cada usuario una vez. Si tenías cuentas en múltiples instancias, la contraseña de una de tus instalaciones fue migrada, pero no necesariamente la que estás intentando acceder.

¡No te preocupes—esto es fácil de solucionar! Puedes restablecer tu contraseña directamente desde la página de inicio de sesión:

  1. Ve a la página de inicio de sesión de PixelUnion
  2. Haz clic en ¿Olvidaste tu contraseña? o Restablecer contraseña
  3. Ingresa tu dirección de correo electrónico
  4. Revisa tu correo electrónico para el enlace de restablecimiento de contraseña
  5. Sigue las instrucciones para establecer una nueva contraseña

Si necesitas ayuda o tienes problemas para restablecer tu contraseña, por favor contacta a nuestro equipo de soporte. ¡Estamos aquí para ayudar!


Nuestro Viaje: De Authentik a Keycloak

En nuestro artículo de blog anterior, explicamos por qué elegimos Authentik como nuestro proveedor de identidad. Authentik es una excelente solución de código abierto que cumplía muchos requisitos: es amigable con Europa, admite protocolos estándar de la industria y proporciona las características de seguridad que necesitábamos.

Sin embargo, después de pasar un tiempo considerable implementando Authentik, descubrimos que no era la opción adecuada para nuestras necesidades específicas. Aunque Authentik es un software excelente, encontramos desafíos que nos hicieron reconsiderar nuestra elección. Después de una evaluación cuidadosa, tomamos la decisión de cambiar a Keycloak.

Keycloak es un proveedor de identidad maduro y probado que ha sido utilizado por organizaciones de todo el mundo durante años. Ofrece:

  • Confiabilidad probada: Utilizado por grandes empresas y organizaciones
  • Documentación completa: Recursos extensos y soporte de la comunidad
  • Mejor ajuste para nuestra arquitectura: Se alinea más estrechamente con nuestros requisitos técnicos
  • Conjunto de características robusto: Todas las características de seguridad que necesitamos, además de espacio para crecer

Este cambio requirió tiempo de desarrollo adicional, pero estamos seguros de que fue la decisión correcta para la estabilidad y seguridad a largo plazo de PixelUnion.


¿Qué Sigue?

Continuamos mejorando nuestra configuración del proveedor de identidad y agregando nuevas características de seguridad. Si tienes preguntas o inquietudes sobre la migración, por favor contacta a nuestro equipo de soporte. ¡Estamos aquí para ayudar!

Gracias por ser parte de la comunidad PixelUnion. Tu seguridad y privacidad siguen siendo nuestras principales prioridades.