# Authentication & Session Management (React Native) > OAuth2/OIDC, PKCE, refresh tokens, secure session storage, webviews vs in-app browser, biometric auth - 22 questions d'entretien - Confirmé - [Questions d'entretien: React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien.md) ## 1. Qu'est-ce que OAuth2 dans le contexte de l'authentification mobile ? **Réponse** OAuth2 est un protocole d'autorisation standard de l'industrie qui permet aux applications mobiles d'accéder aux ressources d'un utilisateur sans exposer ses identifiants. Il fonctionne en déléguant l'authentification à un serveur d'autorisation qui émet des tokens d'accès. Contrairement à une authentification directe où l'application gère les mots de passe, OAuth2 permet à l'utilisateur de s'authentifier via un fournisseur tiers (Google, Apple, etc.) de manière sécurisée. ## 2. Quelle est la différence principale entre OAuth2 et OpenID Connect (OIDC) ? **Réponse** OAuth2 est un protocole d'autorisation qui permet d'obtenir un accès aux ressources, tandis qu'OIDC est une couche d'identité construite au-dessus d'OAuth2 qui ajoute l'authentification. OIDC introduit l'ID token qui contient des informations sur l'identité de l'utilisateur (claims) au format JWT, permettant à l'application de savoir qui est l'utilisateur, pas seulement qu'il a accès à certaines ressources. ## 3. Qu'est-ce que PKCE (Proof Key for Code Exchange) et pourquoi est-il essentiel pour les applications mobiles ? **Réponse** PKCE est une extension de sécurité d'OAuth2 qui protège contre les attaques d'interception du code d'autorisation. Il fonctionne en générant un code_verifier aléatoire côté client, dont on dérive un code_challenge envoyé lors de la demande d'autorisation. Lors de l'échange du code contre un token, le code_verifier original est envoyé et vérifié par le serveur. C'est crucial pour les applications mobiles car elles ne peuvent pas garder un client_secret confidentiel. ## 19 questions supplémentaires disponibles - Quel flow OAuth2 est recommandé pour les applications mobiles React Native ? - Quelle est la différence entre un access token et un refresh token ? S'inscrire gratuitement: https://sharpskill.dev/fr/login ## Autres sujets d'entretien React Native - [Les bases de JavaScript](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/javascript-essentials.md): 25 questions, Junior - [Fondamentaux React](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/react-fundamentals.md): 20 questions, Junior - [Bases de React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/react-native-basics.md): 22 questions, Junior - [React Hooks](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/react-hooks.md): 20 questions, Junior - [TypeScript pour React & React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/typescript-for-react-native.md): 22 questions, Junior - [Composants & API React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-components-api.md): 20 questions, Junior - [Styling & Layout React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-styling-layout.md): 18 questions, Junior - [Navigation React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-navigation.md): 22 questions, Confirmé - [State Management React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-state-management.md): 24 questions, Confirmé - [Networking & API React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-networking-api.md): 20 questions, Confirmé - [Persistance des données](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-data-persistence.md): 20 questions, Confirmé - [Forms & Validation](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-forms-validation.md): 18 questions, Confirmé - [Animations React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-animations.md): 22 questions, Confirmé - [Native Modules & Bridge](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-native-modules.md): 20 questions, Confirmé - [Code spécifique aux plateformes](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-platform-specific-code.md): 18 questions, Confirmé - [Permissions & Device APIs](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-permissions-apis.md): 20 questions, Confirmé - [Push Notifications](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-push-notifications.md): 18 questions, Confirmé - [Testing React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-testing.md): 20 questions, Confirmé - [Debugging React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-debugging.md): 18 questions, Confirmé - [Build & Deployment](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-build-deployment.md): 20 questions, Confirmé - [Expo vs React Native Bare](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/expo-vs-bare-rn.md): 18 questions, Confirmé - [Performance Optimization](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-performance-optimization.md): 24 questions, Senior - [Memory Management](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-memory-management.md): 20 questions, Senior - [Architecture Patterns](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-architecture-patterns.md): 22 questions, Senior - [New Architecture React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-new-architecture.md): 24 questions, Senior - [Security Best Practices](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-security-best-practices.md): 20 questions, Senior - [Offline-First Architecture](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-offline-first.md): 20 questions, Senior - [CI/CD React Native](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-ci-cd.md): 20 questions, Senior - [Monorepo & Code Sharing](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-monorepo-architecture.md): 18 questions, Senior - [Advanced Topics](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-advanced-topics.md): 22 questions, Senior - [App Lifecycle & Background Execution](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-app-lifecycle-background.md): 20 questions, Confirmé - [Monitoring & Crash Reporting](https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-monitoring-crash-reporting.md): 20 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/fr/technologies/react-native/questions-entretien/rn-auth-session-management