Ich entwickle mehrere RESTful-API für den Aufruf von Drittanbietern, und diese API benötigt Authentifizierung (apikey & amp; geheim) und Autorisierung (HTTP-Methode & amp; URI basiert).
Gibt es eine vorhandene Software, die wir wiederverwenden können, die mich daran hindert, unsere eigene Implementierung für die Sicherheitsebene einzuführen?
HTTP gibt Ihnen Unterstützung dafür, damit Sie das Rad nicht neu erfinden müssen
Verwenden Sie entweder:
Auth Digest hat den Vorteil, dass es den Passowrd nicht in Klartext überträgt und Replay-Attacken (mit Nonces) behandelt.
Wir verwenden HTTP Auth Digest (Tomcat Servlet Container hat direkte Unterstützung dafür) und wir sind damit zufrieden.
EDIT: Einige Clients haben Probleme mit Digest (nicht so trivial), also würde ich mich heute für Basic und SSL entscheiden. Vorteil für Basic ist auch, dass Sie preemptive Authentifizierung (sendender Benutzer: pwd in der ersten Anfrage) können.
Unabhängig von Ihrer Technologie können Sie einige Systeme wie AWS verwenden.
Die Implementierung ist nicht zu schwierig, aber Sie müssen jede Anfrage an den Server berücksichtigen, um den Speicher abzufragen, um den SAK abzurufen. Eine Möglichkeit besteht darin, eine NoSQL DB oder ähnliches (wie Redis oder Memcache) zu verwenden, um die Benutzer-ID / sak zu speichern.
Tags und Links api restful-authentication rest