heulendoch
Ensign
- Registriert
- Feb. 2014
- Beiträge
- 252
Hallo zusammen,
gehen wir davon aus ich würde mich über ../api/login (GET) bei meinem REST Service einloggen. Die Logindaten würde ich dann im HTTP Header angeben, so wie hier definiert:
https://de.wikipedia.org/wiki/HTTP-Authentifizierung#Basic_Authentication
Bei dem Request auf ../api/login (GET) würde ich dann ein Token/Handle zurück liefern, das ich bei allen weiteren REST HTTP Requests für die Authentifizierung angebe und nicht mehr Benutzername + Passwort. Ist das so okay? Das Handle läuft nach einer gewissen Zeit, nachdem kein Request mehr kam, ab (oder natürlich durch ein explizites Logout).
Man sendet den Benutzernamen und Passwort also nur beim Login.
Beliebiger Request -> Prüfen ob Handle ok (letzte Aktion neuer als 30 Minuten oder so) [SQL Select] + Benutzer des Handles hat Zugriffsberechtigung auf die angefragte Info -> Zeitpunkt dieses Requests wird in Datenbank zum entsprechenden Handle geschrieben [SQL Update] -> angeforderte Infos werden ermittelt und zurück geliefert [SQL, Dateisystemstuff, ...]
Allerdings keine Ahnung wie viel Performance das kostet wenn zu jedem Request zusätzlich zu den eigentlichen SQL Abfragen noch die zwei für die "Sitzungsprüfung" dazu kommen, wenn man davon ausgeht, dass ~100+ Requests die Minute verabeitet werden sollen.
Grüße
gehen wir davon aus ich würde mich über ../api/login (GET) bei meinem REST Service einloggen. Die Logindaten würde ich dann im HTTP Header angeben, so wie hier definiert:
https://de.wikipedia.org/wiki/HTTP-Authentifizierung#Basic_Authentication
Bei dem Request auf ../api/login (GET) würde ich dann ein Token/Handle zurück liefern, das ich bei allen weiteren REST HTTP Requests für die Authentifizierung angebe und nicht mehr Benutzername + Passwort. Ist das so okay? Das Handle läuft nach einer gewissen Zeit, nachdem kein Request mehr kam, ab (oder natürlich durch ein explizites Logout).
Man sendet den Benutzernamen und Passwort also nur beim Login.
Beliebiger Request -> Prüfen ob Handle ok (letzte Aktion neuer als 30 Minuten oder so) [SQL Select] + Benutzer des Handles hat Zugriffsberechtigung auf die angefragte Info -> Zeitpunkt dieses Requests wird in Datenbank zum entsprechenden Handle geschrieben [SQL Update] -> angeforderte Infos werden ermittelt und zurück geliefert [SQL, Dateisystemstuff, ...]
Allerdings keine Ahnung wie viel Performance das kostet wenn zu jedem Request zusätzlich zu den eigentlichen SQL Abfragen noch die zwei für die "Sitzungsprüfung" dazu kommen, wenn man davon ausgeht, dass ~100+ Requests die Minute verabeitet werden sollen.
Grüße
Zuletzt bearbeitet: