Authentifizierung im Überblick
Caution
Demo-Seite - Dies ist eine Demo-Seite, die die Multi-Tab-Dokumentation vorführt. Dieser Inhalt dient nur zur Veranschaulichung.
Dieser Leitfaden erklärt, wie du dich bei unserer API authentifizierst. Wir unterstützen mehrere Authentifizierungsmethoden:
API-Schlüssel
Die einfachste Authentifizierungsmethode sind API-Schlüssel. Jeder API-Schlüssel ist einer bestimmten Nutzer:in zugeordnet und trägt bestimmte Berechtigungen.
// Example API Key requestconst response = await fetch('https://api.example.com/data', { headers: { 'Authorization': 'Bearer YOUR_API_KEY' }});OAuth 2.0
Für Anwendungen mit höheren Sicherheitsanforderungen unterstützen wir den OAuth-2.0-Flow:
- Autorisierungsanfrage: Leite Nutzer:innen zu unserer Autorisierungs-URL weiter
- Zustimmung der Nutzer:in: Die Person genehmigt den Zugriff auf ihr Konto
- Autorisierungscode: Unser Server gibt einen Autorisierungscode zurück
- Token-Austausch: Tausche den Code gegen ein Access Token
- API-Anfragen: Nutze das Access Token für den Zugriff auf geschützte Ressourcen
JWT-Tokens
Nach der Authentifizierung stellen wir JWT-Tokens aus, die kodierte Informationen über die Nutzer:in und ihre Berechtigungen enthalten.
// Example JWT token usageconst response = await fetch('https://api.example.com/protected-resource', { headers: { 'Authorization': 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...' }});Session-Verwaltung
Sessions sind standardmäßig 24 Stunden gültig. So erneuerst du eine Session:
const refreshResponse = await fetch('https://api.example.com/auth/refresh', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer CURRENT_REFRESH_TOKEN' }});
// Parse the new tokensconst { accessToken, refreshToken } = await refreshResponse.json();Bewährte Vorgehensweisen
- Speichere API-Schlüssel und Tokens niemals im clientseitigen Code
- Nutze Umgebungsvariablen für sensible Zugangsdaten
- Implementiere Mechanismen zur Token-Erneuerung für langlaufende Anwendungen
- Setze passende Ablaufzeiten für Tokens
- Nutze HTTPS für alle API-Anfragen