Autenticación y gestión de sesiones
OAuth2/OIDC, PKCE, refresh tokens, almacenamiento seguro de sesiones, webviews vs in-app browser, autenticación biométrica
1¿Qué es OAuth2 en el contexto de la autenticación móvil?
¿Qué es OAuth2 en el contexto de la autenticación móvil?
Respuesta
OAuth2 es un protocolo de autorización estándar de la industria que permite a las aplicaciones móviles acceder a los recursos de un usuario sin exponer sus credenciales. Funciona delegando la autenticación a un servidor de autorización que emite tokens de acceso. A diferencia de la autenticación directa donde la aplicación gestiona las contraseñas, OAuth2 permite al usuario autenticarse a través de un proveedor externo (Google, Apple, etc.) de forma segura.
2¿Cuál es la principal diferencia entre OAuth2 y OpenID Connect (OIDC)?
¿Cuál es la principal diferencia entre OAuth2 y OpenID Connect (OIDC)?
Respuesta
OAuth2 es un protocolo de autorización que permite obtener acceso a recursos, mientras que OIDC es una capa de identidad construida sobre OAuth2 que añade autenticación. OIDC introduce el ID token, que contiene información sobre la identidad del usuario (claims) en formato JWT, lo que permite a la aplicación saber quién es el usuario, no solo que tiene acceso a ciertos recursos.
3¿Qué es PKCE (Proof Key for Code Exchange) y por qué es esencial para las aplicaciones móviles?
¿Qué es PKCE (Proof Key for Code Exchange) y por qué es esencial para las aplicaciones móviles?
Respuesta
PKCE es una extensión de seguridad de OAuth2 que protege contra los ataques de interceptación del código de autorización. Funciona generando un code_verifier aleatorio en el lado del cliente, del cual se deriva un code_challenge que se envía durante la solicitud de autorización. Al intercambiar el código por un token, se envía el code_verifier original y el servidor lo verifica. Esto es crucial para las aplicaciones móviles porque no pueden mantener confidencial un client_secret.
¿Qué flow de OAuth2 se recomienda para las aplicaciones móviles React Native?
¿Cuál es la diferencia entre un access token y un refresh token?
+19 preguntas de entrevista
Otros temas de entrevista React Native
Fundamentos de JavaScript
Fundamentos de React
Fundamentos de React Native
React Hooks
TypeScript para React y React Native
Componentes y API de React Native
Estilos y Layout en React Native
Navegación en React Native
Gestión de Estado en React Native
Networking y API en React Native
Persistencia de datos
Formularios y validación
Animaciones de React Native
Native Modules & Bridge
Código específico de plataforma
Permisos y APIs de dispositivo
Push Notifications
Testing en React Native
Debugging de React Native
Build & Deployment
Expo vs React Native Bare
Optimización del rendimiento
Gestión de memoria
Architecture Patterns
New Architecture de React Native
Mejores Prácticas de Seguridad
Offline-First Architecture
CI/CD React Native
Monorepo y compartición de código
Temas avanzados
Ciclo de vida de la app y ejecución en segundo plano
Monitoring & Crash Reporting
Domina React Native para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis