Ein Brief an OAuth-Anbieter
(pilcrowonpaper.com)-
Ein Brief an OAuth-Anbieter
-
GitHub
- Der Token-Endpunkt gibt selbst bei Fehlern den Statuscode 200 zurück
- Für Fehlerantworten sollten die Statuscodes 400 oder 401 verwendet werden
-
Facebook
- Der Token-Endpunkt gibt benutzerdefinierte Fehlerantworten zurück
- Es sollte ein JSON-Objekt mit einem Fehlerfeld sein
-
TikTok
- Der Server verwendet den Parameter
client_keystattclient_id - Es gibt keinen Grund, von der Spezifikation abzuweichen
- Der Server verwendet den Parameter
-
Strava
- Der Server verwendet für den Scope-Parameter eine kommagetrennte Liste
- Es sollte eine durch Leerzeichen getrennte Liste sein
-
Naver
- Der Server gibt die Ablaufzeit des Tokens als String zurück
- Das ist ein Problem, das über die Frage der Spezifikationskonformität hinausgeht
-
Verschiedene OAuth-Anbieter
- Zur Client-Authentifizierung sollte HTTP Basic Authentication statt des Parameters
client_secretunterstützt werden - Im OAuth-2.1-Standard ist HTTP Basic Authentication optional, aber obwohl PKCE vorgeschrieben ist, verwenden die meisten Anbieter es dennoch nicht
- Zur Client-Authentifizierung sollte HTTP Basic Authentication statt des Parameters
-
AWS
- Bei der Verwendung mit OAuth-Client-Bibliotheken gingen mehrere Fehlermeldungen ein, aber da sich das Problem nicht reproduzieren ließ, wurde der entsprechende Inhalt entfernt
-
1 Kommentare
Beim Aufbau eines staatlichen Bürgerdienstprojekts habe ich die Erfahrung gemacht, dass allein die Implementierung der OAuth-(OIDC-)Funktion einen ganzen Monat gedauert hat...
Da wir keine externen Bibliotheken verwenden konnten, mussten wir alles einzeln selbst implementieren, und außer Kakao oder Google hat praktisch niemand den OAuth-Standard sauber eingehalten...
Bei Naver war es eher auf dem Niveau von „Hauptsache, der Login funktioniert“, sodass ich mich fragte, ob man das überhaupt so einsetzen kann, und bei Apple brauchte man, selbst wenn ich heute darüber nachdenke und mich nicht einmal mehr daran erinnere, wie ich es umgesetzt habe, mehr als dreimal so viel Implementierungscode wie bei bestehendem OAuth-Code.
Wie im obigen Text beschrieben, gab es Fälle, in denen die Response-Codes völliges Chaos waren, und es gab sogar Anbieter, die am Ende 418 (I'm a teapot) zurückgegeben haben.
Wegen solcher Erfahrungen nutze ich selbst praktische Funktionen wie Social Login lieber gar nicht mehr...