# Autenticação e gerenciamento de sessões (React Native) > OAuth2/OIDC, PKCE, refresh tokens, armazenamento seguro de sessões, webviews vs in-app browser, autenticação biométrica - 22 perguntas de entrevista - Mid-Level - [Perguntas de entrevista: React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista.md) ## 1. O que é o OAuth2 no contexto da autenticação móvel? **Resposta** OAuth2 é um protocolo de autorização padrão da indústria que permite que aplicações móveis acessem os recursos de um usuário sem expor suas credenciais. Ele funciona delegando a autenticação a um servidor de autorização que emite tokens de acesso. Diferentemente da autenticação direta, onde a aplicação gerencia as senhas, o OAuth2 permite que o usuário se autentique por meio de um provedor terceirizado (Google, Apple, etc.) de forma segura. ## 2. Qual é a principal diferença entre OAuth2 e OpenID Connect (OIDC)? **Resposta** OAuth2 é um protocolo de autorização que permite obter acesso a recursos, enquanto o OIDC é uma camada de identidade construída sobre o OAuth2 que adiciona autenticação. O OIDC introduz o ID token, que contém informações sobre a identidade do usuário (claims) no formato JWT, permitindo que a aplicação saiba quem é o usuário, e não apenas que ele tem acesso a determinados recursos. ## 3. O que é o PKCE (Proof Key for Code Exchange) e por que ele é essencial para aplicações móveis? **Resposta** PKCE é uma extensão de segurança do OAuth2 que protege contra ataques de interceptação do código de autorização. Ele funciona gerando um code_verifier aleatório no lado do cliente, a partir do qual se deriva um code_challenge enviado durante a solicitação de autorização. Ao trocar o código por um token, o code_verifier original é enviado e verificado pelo servidor. Isso é crucial para aplicações móveis porque elas não conseguem manter um client_secret confidencial. ## Mais 19 perguntas disponiveis - Qual flow do OAuth2 é recomendado para aplicações móveis React Native? - Qual é a diferença entre um access token e um refresh token? Cadastre-se gratis: https://sharpskill.dev/pt/login ## Outros temas de entrevista React Native - [Fundamentos de JavaScript](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/javascript-essentials.md): 25 perguntas, Junior - [Fundamentos do React](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/react-fundamentals.md): 20 perguntas, Junior - [Fundamentos do React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/react-native-basics.md): 22 perguntas, Junior - [React Hooks](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/react-hooks.md): 20 perguntas, Junior - [TypeScript para React e React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/typescript-for-react-native.md): 22 perguntas, Junior - [Componentes e API do React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-components-api.md): 20 perguntas, Junior - [Estilização e Layout no React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-styling-layout.md): 18 perguntas, Junior - [Navegação no React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-navigation.md): 22 perguntas, Mid-Level - [Gerenciamento de Estado no React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-state-management.md): 24 perguntas, Mid-Level - [Networking e API no React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-networking-api.md): 20 perguntas, Mid-Level - [Persistência de dados](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-data-persistence.md): 20 perguntas, Mid-Level - [Formulários e validação](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-forms-validation.md): 18 perguntas, Mid-Level - [Animações do React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-animations.md): 22 perguntas, Mid-Level - [Native Modules & Bridge](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-native-modules.md): 20 perguntas, Mid-Level - [Código específico de plataforma](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-platform-specific-code.md): 18 perguntas, Mid-Level - [Permissões e APIs de dispositivo](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-permissions-apis.md): 20 perguntas, Mid-Level - [Push Notifications](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-push-notifications.md): 18 perguntas, Mid-Level - [Testing no React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-testing.md): 20 perguntas, Mid-Level - [Debugging de React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-debugging.md): 18 perguntas, Mid-Level - [Build & Deployment](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-build-deployment.md): 20 perguntas, Mid-Level - [Expo vs React Native Bare](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/expo-vs-bare-rn.md): 18 perguntas, Mid-Level - [Otimização de desempenho](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-performance-optimization.md): 24 perguntas, Senior - [Gerenciamento de memória](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-memory-management.md): 20 perguntas, Senior - [Architecture Patterns](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-architecture-patterns.md): 22 perguntas, Senior - [New Architecture do React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-new-architecture.md): 24 perguntas, Senior - [Melhores Práticas de Segurança](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-security-best-practices.md): 20 perguntas, Senior - [Offline-First Architecture](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-offline-first.md): 20 perguntas, Senior - [CI/CD React Native](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-ci-cd.md): 20 perguntas, Senior - [Monorepo e compartilhamento de código](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-monorepo-architecture.md): 18 perguntas, Senior - [Tópicos avançados](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-advanced-topics.md): 22 perguntas, Senior - [Ciclo de vida do app e execução em segundo plano](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-app-lifecycle-background.md): 20 perguntas, Mid-Level - [Monitoring & Crash Reporting](https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-monitoring-crash-reporting.md): 20 perguntas, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pt/technologies/react-native/perguntas-entrevista/rn-auth-session-management