El inicio de sesión social permite el registro con un solo toque utilizando una cuenta existente. Google, Apple, Facebook, los usuarios ya tienen credenciales. Esta guía presenta cómo implementar el inicio de sesión social de forma segura y eficaz.
¿Qué es el inicio de sesión social?
Definición
Autenticación mediante proveedor de identidad externo.
OAuth 2.0
Protocolo estándar para la autorización.
Proveedores
Google, Apple, Facebook, Microsoft, GitHub.
¿Por qué utilizar?
Menos fricción
Un toque versus forma completa.
Conversión
Más usuarios completan el registro.
Seguridad
No más contraseñas para administrar.
Datos verificados
Correo electrónico confirmado por el proveedor.
Principales proveedores
Inicio de sesión con Google
Más común. Funciona en iOS y Android.
Iniciar sesión con Apple
Requerido para aplicaciones de iOS que ofrecen inicio de sesión social.
Iniciar sesión en Facebook
Gran base de usuarios.
###Microsoft
Bueno para B2B.
GitHub
Para aplicaciones de desarrollador.
Flujo de OAuth
Redirigir
El usuario va al proveedor, se autentica y regresa con el código.
Intercambio de tokens
El backend intercambia código por token de acceso.
Información de usuario
Obtiene datos del usuario.
Sesión
Cree una sesión en su sistema.
Iniciar sesión con Apple
Obligatorio
Apple lo requiere si ofrece otros inicios de sesión sociales.
###Privacidad
El usuario puede ocultar el correo electrónico.
Clave de hardware
Autenticación biométrica nativa.
Multiplataforma
Funciona en Android y web también.
Iniciar sesión con Google
SDK
Android, iOS y SDK web disponibles.
Un toque
Experiencia optimizada sin redireccionamiento.
Alcances
Definir a qué datos acceder.
Autenticación de Firebase
Integración simplificada.
Implementación móvil
iOS
Servicios de autenticación para Apple, Google SDK.
###Androide
SDK de inicio de sesión de Google, administrador de credenciales.
Reaccionar nativo
Expo Auth, bibliotecas React Native.
aleteo
google_sign_in, sign_in_with_apple paquetes.
Verificación de backend
Verificación de token
Valida tokens en tu servidor.
No confíes en el cliente
Siempre verifique el lado del servidor.
Vencimiento del token
Gestionar el vencimiento.
Actualizar tokens
Para sesiones largas.
Vincular cuentas
Problema
Mismo correo electrónico, diferentes proveedores.
Solución
Vincular cuentas a través de correo electrónico verificado.
interfaz de usuario
Oferta opción para vincular.
Conflictos
Resuelva qué cuenta es la principal.
Experiencia de usuario
Botones estándar
Utilice diseños oficiales de proveedores.
Estado de carga
Mostrar progreso durante la autenticación.
Errores
Borrar mensajes si falla.
Repliegue
Correo electrónico/contraseña como alternativa.
Datos del proveedor
Básico
Correo electrónico, nombre, foto.
Alcances adicionales
Contactos, calendario (cuando sea necesario).
Minimización
Sólo pide lo que necesitas.
Actualización
Los datos pueden cambiar en el proveedor.
Seguridad
HTTPS
Siempre, sin excepciones.
Parámetro de estado
Previene CSRF.
Almacenamiento de tokens
Almacenamiento seguro, no texto sin formato.
Revocación
Manejar cuando el usuario desautoriza.
##Privacidad
Consentimiento
Explique qué datos utilizará.
LGPD/GDPR
El inicio de sesión social no está exento de cumplimiento.
Datos mínimos
Sólo lo necesario.
Eliminación
Respetar las solicitudes de eliminación.
##Cerrar sesión
¿Cerrar sesión en redes sociales?
Generalmente no. Solo desde tu aplicación.
Revocación de token
Invalide tokens en su sistema.
Borrar estado
Borrar datos locales.
Errores comunes
No verificar token
Aceptar cualquier cosa del cliente.
No vincular cuentas
El usuario crea duplicados.
UI no estandarizada
Botones que no siguen pautas.
Falta la manzana
Aplicaciones rechazadas por no incluirse.
Métricas
Conversión por proveedor
¿Cuál convierte mejor?
Errores
Tasa de fracaso por proveedor.
Vinculación de cuentas
¿Cuántas cuentas vinculadas?
Conclusión
El inicio de sesión social reduce la fricción y aumenta la conversión. Implemente correctamente, verificando siempre los tokens del lado del servidor. Incluya Apple si es iOS, ofrezca el correo electrónico como alternativa y siga las pautas de interfaz de usuario de los proveedores.
##Preguntas frecuentes
1) ¿Es obligatorio iniciar sesión con Apple? Si tu aplicación ofrece otros inicios de sesión sociales, sí para iOS.
2) ¿Puedo confiar en los datos del proveedor? Verifique los tokens en el servidor. Los correos electrónicos son generalmente confiables si los verifica el proveedor.
3) ¿Cómo lidiar con "Ocultar mi correo electrónico" de Apple? El proxy de correo electrónico funciona normalmente. Simplemente no es el correo electrónico real.
4) ¿Debo ofrecer también el correo electrónico y la contraseña de inicio de sesión? Recomendado. No todo el mundo quiere utilizar las redes sociales.
5) ¿Es más seguro el inicio de sesión social? Quizás. El usuario no crea una contraseña débil. Pero depende de la implementación.
Lea también
- Inicio de sesión social en aplicaciones: planificación con ejemplos de lo que funciona y lo que no funciona
- Login social en la práctica: la hoja de ruta de decisión antes de implementarlo en tu aplicación
- Autenticación de aplicaciones: Guía completa de seguridad y UX
- Autenticación en Aplicaciones - Mejores Prácticas con Lista de Verificación
- Autenticación en Aplicaciones - Mejores Prácticas con Ejemplos
- [OAuth ¿Qué es 5?
