Authentifizierung und Sitzungsverwaltung
OAuth2/OIDC, PKCE, Refresh-Tokens, sichere Sitzungsspeicherung, WebViews vs. In-App-Browser, biometrische Authentifizierung
1Was ist OAuth2 im Kontext der mobilen Authentifizierung?
Was ist OAuth2 im Kontext der mobilen Authentifizierung?
Antwort
OAuth2 ist ein branchenübliches Autorisierungsprotokoll, das mobilen Anwendungen den Zugriff auf Benutzerressourcen ermöglicht, ohne deren Anmeldedaten preiszugeben. Es funktioniert, indem die Authentifizierung an einen Autorisierungsserver delegiert wird, der Access-Tokens ausstellt. Im Gegensatz zur direkten Authentifizierung, bei der die Anwendung Passwörter verwaltet, erlaubt OAuth2 dem Benutzer, sich sicher über einen Drittanbieter (Google, Apple usw.) zu authentifizieren.
2Was ist der Hauptunterschied zwischen OAuth2 und OpenID Connect (OIDC)?
Was ist der Hauptunterschied zwischen OAuth2 und OpenID Connect (OIDC)?
Antwort
OAuth2 ist ein Autorisierungsprotokoll, das den Zugriff auf Ressourcen ermöglicht, während OIDC eine auf OAuth2 aufbauende Identitätsschicht ist, die Authentifizierung hinzufügt. OIDC führt das ID token ein, das Informationen über die Benutzeridentität (claims) im JWT-Format enthält und es der Anwendung ermöglicht zu wissen, wer der Benutzer ist, und nicht nur, dass er Zugriff auf bestimmte Ressourcen hat.
3Was ist PKCE (Proof Key for Code Exchange) und warum ist es für mobile Anwendungen unverzichtbar?
Was ist PKCE (Proof Key for Code Exchange) und warum ist es für mobile Anwendungen unverzichtbar?
Antwort
PKCE ist eine OAuth2-Sicherheitserweiterung, die vor Angriffen zum Abfangen des Authorization Code schützt. Sie funktioniert, indem auf der Client-Seite ein zufälliger code_verifier generiert wird, aus dem ein code_challenge abgeleitet und während der Autorisierungsanfrage gesendet wird. Beim Austausch des Codes gegen ein Token wird der ursprüngliche code_verifier gesendet und vom Server überprüft. Dies ist für mobile Apps entscheidend, da sie ein client_secret nicht vertraulich halten können.
Welcher OAuth2 Flow wird für React Native Mobilanwendungen empfohlen?
Was ist der Unterschied zwischen einem access token und einem refresh token?
+19 Interview-Fragen
Weitere React Native-Interviewthemen
JavaScript-Grundlagen
React-Grundlagen
React Native Grundlagen
React Hooks
TypeScript für React & React Native
React Native Komponenten & API
Styling & Layout in React Native
React Native Navigation
React Native State Management
Networking & API in React Native
Datenpersistenz
Formulare & Validierung
React Native Animationen
Native Modules & Bridge
Plattformspezifischer Code
Berechtigungen & Geräte-APIs
Push Notifications
React Native Testing
React Native Debugging
Build & Deployment
Expo vs React Native Bare
Performance-Optimierung
Speicherverwaltung
Architecture Patterns
React Native New Architecture
Security Best Practices
Offline-First Architecture
React Native CI/CD
Monorepo & Code-Sharing
Fortgeschrittene Themen
App-Lebenszyklus & Hintergrundausführung
Monitoring & Crash Reporting
Meistere React Native für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten