Hinzufügen von Oauth 2.0-Jersey-basierten RESTful-server

Ich habe eine Jersey basierten server, die ich sichern will mit OAuth 2.0. Es gibt zwei Wege, die ich gesehen habe, wie üblich:

  • Oltu - Ist kompatibel mit Jersey und scheint unterstützt zu werden, wenngleich nicht so gut wie Spring Security. Diese 2012 Frage zu zeigen scheint, dies ist der Weg zu gehen, aber ich möchte eine Bestätigung auf 2016 Kontext, so dass ich Sohn nicht etwas umzusetzen ist nicht so gut mehr unterstützt.
  • Spring Security - Es scheint sehr beliebt zu sein, aber dieser Weg impliziert ändern der server in einer Spring-basierten MVC. Ich weiß nicht, ob das etwas ist empfehlenswert, auf der Grundlage der Vorteile der Verwendung von etwas so stark unterstützt wie der Frühling und die Kosten für die Umgestaltung.

Mit Unterstützung meine ich, ein Projekt, das in continous development, gut etablierte community mit tutorials, Materialien und einige libraries für clients (web, mobile, server) bereits vorhanden.

Davon eine stärkere option sein? Gibt es eine andere option oder Optionen?

In jedem Fall. Gibt es ein gutes Referenz-material oder ein tutorial, um mit der Umsetzung beginnen diese?


UPDATE

Nach ein paar Stunden Lesen und Verständnis sowohl über die OAuth-Anbieter hatte ich bereits erwähnt, ich fühle Apache Oltu ist Dokumentation nicht mich leiten viel wie es sind wichtige Komponenten, die nicht dokumentiert, aber eine Beispiel gab mir ein besseres Bild auf, wie Oltu umgesetzt werden müssen. Auf der anderen Seite, gehen durch Spring Security material habe ich erfahren, dass es weiterhin gebaut auf einem non-Spring MVC-basierte java-Projekt. Aber es gibt eine begrenzte Exposition von Implementierungen/tutorials zu Spring Security auf einem nicht-Feder-basiertes Projekt.

Anderen Ansatz:

Ich kam mit einer Architektur, die könnte stabiler sein würde und Sie kümmern sich nicht um die details der Implementierung der innere-server(die, die bereits umgesetzt Jersey). Mit einem server, der ausschließlich für die Sicherheit Zweck (Autorisierung, Authentifizierung, Token speichern in der eigenen Datenbank, etc) in der Mitte, die verhält sich wie eine Schnittstelle zwischen der Außenwelt und dem inneren server. Es agiert im Grunde ein relais und leitet die Anrufe hin und her und sorgt dafür, dass der client weiß nichts über den inneren server und die Entitäten die Kommunikation mit dem security server. Ich denke, dies wäre der Weg, um vorwärts zu bewegen, wie

  1. Ersetzen mit einem anderen security-Anbieter bedeutet nur, das Stopfen sich die security server implemetation und füge die neuen ein.
  2. Der security server kümmert sich nichts über den inneren server-Implementierung und die Gespräche würden noch Folgen, der Rest an Normen.

Ich Schätze Ihre Anregungen oder Rückmeldungen zu diesem Ansatz.

Schreibe einen Kommentar