2010-10-26 7 views
16

ich kämpfen bin ein brauchbares Juwel zu finden, die die folgenden für eine Rails 2.3.5 Anwendung bietet:Gem für OAuth2 Consumer und Provider-Funktionalität in Rails 2.3.5

  • wir mit API wollen oAuth schützen out 2 ; daher ein Controller-Zugriff/Anforderung Tokens für die Erstellung und die Modelle (Client, Token, ...) sind
  • erforderlich
  • wollen wir OAuth2 Dienste wie Facebook und Twitter

Es wäre auch schön zu haben, Unterstützung konsumieren für 3-beinige und 2-beinige Authentifizierung.

fand ich diese Edelsteine, aber sie alle haben große Nachteile:

  • oauth-Rubin (github.com/oauth/oauth-ruby)
    • i bereits implementiert, wenn es nicht ganz sicher bin, oauth2 Mechanismen
    • eher wie ein Grund lib für Dienste auf

  • oauth-Plugin (github.com/pelle/oauth-plugin)
    • sieht praktisch, aber OAuth2 nur in rails3 Zweig unterstützt :(

  • oauth2 (github.com/intridea/oauth2)
    • nur für oAuth2 Verbraucher/keine Provider-Funktionalität

  • oauth2-Rubin (github.com/aflatter/oauth2-ruby/tree/)
    • letzten COMMIT: 16.07.10 "DESCTRUCTIVE commit"
    • :(
    • basierend auf OAuth2 Draft 00 (alt!)

  • oauth2-Provider (github.com/ThoughtWorksStudios/oauth2_provider)
    • letzten COMMIT: 21.10.10 - gut
    • nur Provider-Funktionalität :(
    • basierend auf OAuth2 Draft 09 (relativ neu)

jemand diese requirenments mit einer oder einer Kombination dieser Edelsteine ​​erreichen Haben Could Sie mir bitte eine Richtung zur Verfügung stellen?

Jede Hilfe willkommen ist viel!

+0

Ich habe heute eine Antwort von pelle, dem Autor des oauth-plugins, erhalten. Ich fragte ihn, ob der oauth2-Support auch im Master-Zweig verfügbar sein würde (nicht nur der rails3-Zweig). Er sagte: "Es sollte innerhalb von Rails 2.3.x gut funktionieren, aber ich würde gerne Feedback dazu bekommen. Ich sollte den Zweig wirklich umbenennen." ! Ich werde es ausprobieren ! http://github.com/pelle/oauth-plugin/issues#issue/19 – Makibo

+0

Wir implementiert eine benutzerdefinierte Gabel der Rails3 Branch aus dem oauth-Plugin und es funktionierte wie ein Charme – Makibo

+0

Ich habe noch ein Problem auf before_filter: login_or_oauth_required und oauthenticate Rückrufe, wie hast du es geschafft? – gozali

Antwort

1

Ich kann nicht mit Ihrer Suche helfen. Aber ich werde nur sagen, dass das ist eine ziemlich große Anzahl von Implementierungen für ein Protokoll, das nach wie vor in sehr aktiver Entwicklung ist :)

meine Zeiger auf den aktuellen OAuth 2.0-Status anzeigen, wie der Entwurfs 11, bei https://security.stackexchange.com/questions/1187/what-were-the-specific-security-flaws-with-oauth-1-0-how-are-they-being-addresse/1201#1201

(Kann jemand den Grad der Interoperabilität zwischen den verschiedenen Entwürfen von 2.0 charakterisieren?)

1

ich die meisten der Edelsteine ​​in diesem Thread aufgelistet haben ausgewertet und in meiner (voreingenommenen) Meinung ist das devise_oauth2_providable-Juwel das beste oauth2-Provider-Backend für eine Rails-App. Ziel ist es, die einfachste Integration für bestehende Rails-Apps zu sein, und ich würde empfehlen, sie zu betrachten.

https://github.com/socialcast/devise_oauth2_providable

Sie können für oauth2 Verbraucher einen anderen Edelstein mischen und anzupassen, da sie unterschiedlich genug Verantwortlichkeit sind.