Ich versuche herauszufinden, die beste Möglichkeit, Benutzerauthentifizierung für meine mobile Anwendung (iOS & Android) und API (PHP) zu behandeln.Was ist ein API Token
Von dem, was ich recherchiert habe die Optionen sind:
Grund Auth über HTTPS - Überprüfen Sie Benutzername/Passwort des Benutzers für jede Anforderung.
Sitzungen - Senden Sie eine Sitzungs-ID mit jeder Anfrage; Server behält den Status bei. So App sendet Benutzername/Passwort und Server prüft auf einen eingeloggten Benutzer bei nachfolgenden Anfragen, genau wie meine Website.
API-Token - Die mobile Anwendung sendet Benutzername/Passwort und erhält ein Token zurück, das dann an nachfolgende Anfragen angehängt wird. Token in DB gespeichert und bei jeder Anfrage überprüft.
Ich vermute, dass meine Erklärung der API-Token ist falsch, da sie identisch mit Sitzungen scheinen, weil ich Sitzungs-IDs in der Datenbank speichern.
- Könnte meine Erklärung der API-Token korrigiert werden. Wofür sind sie? Wie unterscheiden sie sich von Sitzungs-IDs?
- Was sind die Vorteile von API-Tokens?
- Ist oAuth (wenn wir seine Verwendung vereinfachen sollten) nur ein Protokoll zum Erstellen von "API-Tokens"?
Können Sie näher auf "Die Session-ID ist keine Form der Authentifizierung, sondern eine Folge der Autorisierung."? – paul
Aktualisiert meine Antwort, in Kürze - Die Session-ID ist keine Form der Authentifizierung, das API-Token ist. –
Sie sagen, ein API-Schlüssel identifiziert nur Anforderungen, die von meiner App kommen, und hat nichts damit zu tun, dass sich ein Benutzer über die App anmeldet? Nach dem, was ich gelesen habe, sollte meine API statusfrei sein und keine Sitzungen verwenden. – paul