Uwierzytelnianie i zarządzanie sesją
OAuth2/OIDC, PKCE, refresh tokeny, bezpieczne przechowywanie sesji, webview vs in-app browser, uwierzytelnianie biometryczne
1Czym jest OAuth2 w kontekście uwierzytelniania mobilnego?
Czym jest OAuth2 w kontekście uwierzytelniania mobilnego?
Odpowiedź
OAuth2 to standardowy w branży protokół autoryzacji, który umożliwia aplikacjom mobilnym dostęp do zasobów użytkownika bez ujawniania jego danych uwierzytelniających. Działa poprzez delegowanie uwierzytelniania do serwera autoryzacji, który wydaje tokeny dostępu. W przeciwieństwie do bezpośredniego uwierzytelniania, gdzie aplikacja obsługuje hasła, OAuth2 pozwala użytkownikowi bezpiecznie uwierzytelnić się za pośrednictwem zewnętrznego dostawcy (Google, Apple itp.).
2Jaka jest główna różnica między OAuth2 a OpenID Connect (OIDC)?
Jaka jest główna różnica między OAuth2 a OpenID Connect (OIDC)?
Odpowiedź
OAuth2 to protokół autoryzacji, który umożliwia uzyskanie dostępu do zasobów, podczas gdy OIDC to warstwa tożsamości zbudowana na OAuth2, która dodaje uwierzytelnianie. OIDC wprowadza ID token, który zawiera informacje o tożsamości użytkownika (claims) w formacie JWT, dzięki czemu aplikacja wie, kim jest użytkownik, a nie tylko że ma on dostęp do określonych zasobów.
3Czym jest PKCE (Proof Key for Code Exchange) i dlaczego jest niezbędny dla aplikacji mobilnych?
Czym jest PKCE (Proof Key for Code Exchange) i dlaczego jest niezbędny dla aplikacji mobilnych?
Odpowiedź
PKCE to rozszerzenie bezpieczeństwa OAuth2, które chroni przed atakami przechwytywania kodu autoryzacyjnego. Działa poprzez wygenerowanie losowego code_verifier po stronie klienta, z którego wyprowadzany jest code_challenge wysyłany podczas żądania autoryzacji. Podczas wymiany kodu na token wysyłany jest oryginalny code_verifier, który serwer weryfikuje. Jest to kluczowe dla aplikacji mobilnych, ponieważ nie mogą one zachować client_secret w poufności.
Który flow OAuth2 jest zalecany dla aplikacji mobilnych React Native?
Jaka jest różnica między access token a refresh token?
+19 pytań z rozmów
Inne tematy rekrutacyjne React Native
Podstawy JavaScript
Podstawy React
Podstawy React Native
React Hooks
TypeScript dla React i React Native
Komponenty i API React Native
Stylowanie i układ w React Native
Nawigacja w React Native
Zarządzanie stanem w React Native
Networking i API w React Native
Trwałość danych
Formularze i walidacja
Animacje React Native
Native Modules & Bridge
Kod specyficzny dla platformy
Uprawnienia i interfejsy API urządzenia
Push Notifications
Testowanie React Native
Debugowanie React Native
Build & Deployment
Expo vs React Native Bare
Optymalizacja wydajności
Zarządzanie pamięcią
Architecture Patterns
New Architecture w React Native
Najlepsze praktyki bezpieczeństwa
Offline-First Architecture
CI/CD React Native
Monorepo i współdzielenie kodu
Zaawansowane tematy
Cykl życia aplikacji i wykonywanie w tle
Monitoring & Crash Reporting
Opanuj React Native na następną rozmowę
Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.
Zacznij za darmo