Integriere den Login von Facebook, Google, Twitter, etc. in CakePHP?

9

Zusammenfassung der Frage:
Ich möchte ein CakePHP-basiertes Registrierungs- und Anmeldesystem erstellen, das mehrere verschiedene Gateways wie OpenID, Facebook, Twitter usw. anbietet. Ich möchte, dass das System einem Benutzer erlaubt, mehrere Formen der Identifikation mit seinem Konto zu verknüpfen.

Nachdem ich viel gesucht habe, blicke ich auf alles, was mehr als eine Autorisierungsmethode zulässt. Das Autorisierungssystem von Cake erschwert die Sache, daher ist die Verwendung eines Tutorials für allgemeines PHP nicht wirklich effektiv. Hat jemand eine Lösung oder irgendwo kann ich anfangen?

Beispiel:
Um ein einfaches Beispiel zu geben, wenn Sie sich das StackExchange-Netzwerk ansehen: Sie können sich mit einem Stack-Exchange-Konto, Google, Yahoo, Facebook oder OpenID anmelden / registrieren. Sobald Sie eingeloggt sind, können Sie Ihrem Konto weitere dieser Methoden hinzufügen, so dass Sie eine Vielzahl von Möglichkeiten kennen. Ich weiß, StackExchange ist wahrscheinlich nicht in Cake geschrieben, aber es dient als ein Beispiel.

Danke!

Ursprüngliche Frage

Hier ist der Scoop: Ich würde gerne ein einfaches Registrierungs- / Login-System für jeden der Hauptdienste integrieren, die oauth / openid in CakePHP anbieten.

Grundsätzlich möchte ich, dass meine Benutzer den alten Modestil (einschließlich Validierungs-E-Mail) registrieren oder einen vorhandenen Service verwenden können, um sich zu verifizieren. Ich möchte, dass sie sich anschließend mit diesem Dienst oder mit einem Benutzernamen und einem Passwort anmelden können.

Jetzt habe ich extrem detaillierte Plugins für die vollständige Facebook-Integration und ähnliches gefunden, aber das Entscheidende ist, dass ich das nur für die Registrierung und den Login an dieser Stelle verwenden möchte, und ich möchte, dass die Erfahrung die gleiche bleibt unabhängig davon, welchen Dienst sie wählen (plus, ich würde gerne verstehen, wie es funktioniert ... weil es darum geht, CakePHP doch zu lernen).

Ich möchte auch, dass sie in der Lage sind, andere Dienste zu verknüpfen, sobald das Konto erstellt wurde, wenn sie dies wünschen. In einer Nussschale sollte ihr Konto in der Lage sein, mit einer beliebigen Anzahl von Login-Diensten verknüpft zu werden oder gar keine.

Wie um alles in der Welt gehe ich hier vor?

Danke,

James

    
xtraorange 03.05.2012, 22:45
quelle

2 Antworten

2

Sieht so aus, als ob es jetzt eine Drittanbieter-Bibliothek gibt, die mit Opauth verfügbar ist, wie auf Dieser Bäckerei-Thread

Hier ist die Github-Seite der CakePHP-Version:

Ссылка

    
AngeloS 11.09.2012, 02:02
quelle
2

Gute Frage - unser CakePHP-Entwicklungsstudio könnte sich das in den kommenden Monaten auch anschauen. Ich vermute, du wirst mehr Glück haben, wenn du das als allgemeine PHP-Frage erforschst und dann wie du diese Lösung in Cake portieren kannst. Schreiben Sie definitiv zurück mit allem, was Sie entdecken.

Vielleicht findest du diesen Thread als hilfreichen Ausgangspunkt, obwohl er bereits 2010 veröffentlicht wurde:

Simon East 16.05.2012 00:06
quelle

Tags und Links