2010-06-21 8 views
6

Normalerweise fragen die Leute nach "beste Bibliothek", aber ich nehme an, OpenID-Authentifizierung ist nur ein paar Anfragen in/out ...? Und ich bin auf GAE, wo mehr JARs langsameren Kaltstart bedeutet. Zum Beispiel openid4java-0.9.5.jar hat 190kB. Das scheint eine wahnsinnig hohe Kosten für einige URL-Lese-und Text-Parsing.Ich möchte OpenID auf GAE/J. Ich will nicht noch ein + 100kB JAR. Bin ich verloren?

Fehle ich etwas? Ist es komplizierter als wenn man access_token und Benutzerinformationen von Facebook anfordert?

Gibt es einige gut erklärte Howto? (This looks good scheint aber nur für Google-Konten nützlich zu sein.)
Oder ist die Authentifizierung kompliziert (oder Identitätsanbieter, die nicht kompatibel sind), die ich einfach + 190kB akzeptieren und sie zu meinen JARs hinzufügen soll? (Oder vielleicht warten Sie mit OpenID für jetzt.)

+13

App Engine unterstützt nun nativ OpenID. Gibt es einen Grund, warum du das nicht nutzen kannst? –

+2

Der einzige Grund wäre, dass ich das nicht wusste. Dumm, ich weiß. : P Danke, Nick !! Könnten Sie mir bitte eine URL geben? Ich kann nichts googlen, was "offiziell" genug aussehen würde. –

+2

http://code.google.com/appengine/docs/java/users/overview.html – nicerobot

Antwort

0

Ich denke, es ist immer besser, eine gute Bibliothek zu verwenden als etwas selbst zu schreiben. Ist 100 KB eine große Menge für einen serverseitigen Code? Wenn Sie wirklich die Größe Ihres endgültigen Codes reduzieren wollen, verwenden Sie besser einen guten Obfuscator, zum Beispiel kann ProGuard Methodennamen verkürzen und unnötigen Code entfernen.

Aber denken Sie daran, dass vorzeitige Optimierung die Wurzel allen Übels ist - solche Stripping-JARs können großen Sinn für Applets oder anderen Code haben, den Benutzer herunterladen müssen, aber IMO hat wenig Sinn für serverseitige Anwendungen.

+0

Danke, aber ich denke nicht, dass es sinnvoll ist, eine Bibliothek für etwas zu verwenden, das in 5 Zeilen Code ausgeführt werden kann. Aber es ist sehr üblich zu sehen ... –

1

Verwenden Sie die von der Google App Engine bereitgestellten Anmeldeinformationen für die föderierten Anmeldedaten. Föderierte Anmeldung bezieht sich auf jeden Dienst, mit dem Benutzer eine einzelne ID oder ein Konto erstellen und diese zur Authentifizierung bei verschiedenen Diensten verwenden können. OpenID ist die einzige vom Google App Engine-Benutzerdienst unterstützte föderierte Anmeldung.

Sie weitere Informationen über die Authentifizierungsoptionen finden Sie hier: http://code.google.com/appengine/docs/java/users/overview.html#Authentication_Options

Und ich würde empfehlen, die „User Experience Zusammenfassung für Federated Login“ lesen auch: http://sites.google.com/site/oauthgoog/UXFedLogin/summary

+0

Danke, ich habe schon die Antwort, siehe oben. (Es wurde nicht markiert, weil es in einem Kommentar angegeben wurde.) –

0

+1 für den Standard-Öffnen Id (obwohl experimentell) Unterstützung in GAE

Trotzdem habe ich RPX (jetzt Janrain): http://www.janrain.com/products/engage eariler. Passt gut in Ihre Anforderung - keine Gläser, wenig Code und Unterstützung für alle login openid/sozialen Schnittstellen. Alles, was Sie benötigen, ist eine öffentlich zugängliche Rückruf-URL.

Schau es dir an!

Verwandte Themen