Überschreiben Sie WordPress-Benutzer mit OAuth2-Konto

Ich versuche, WordPress als OAuth2-Client einzurichten. Alle unsere Benutzer sind in unserem proprietären CMS gespeichert, das ein OAuth-Anbieter ist. Wir haben sehr wenige (bis keine) Benutzer in unserer WordPress-database, hauptsächlich nur Administratoren. Im Idealfall möchte ich keine Benutzerdaten in der WordPress-database speichern, da ich irgendwie den Zustand auf X-Seiten von WordPress pflegen müsste, während ich eine Quelle der Wahrheit in unserem proprietären CMS habe.

Mein ursprüngliches Design hierfür war, ein Plugin zu erstellen, das die bestehende WordPress-Benutzerfunktionalität überschreibt und ein OAuth-Zugriffstoken und eine Benutzer-UUID in einem Cookie oder einer Sitzung speichert. Aber ich brauche diesen Benutzer in anderen Plugins zugänglich zu sein, also im Idealfall überschreiben die Standard-WordPress-Benutzer-Methoden.

Ist das ein akzeptabler Ansatz? Oder versuche ich mit WordPress so zu arbeiten, dass es nicht funktioniert?

Ich kann Tonnen von Plugins finden, um WordPress als OAuth2-Anbieter einzurichten, aber nur sehr wenige als Client. Davon abgesehen habe ich einige gefunden, die WordPress als Client eingerichtet haben, aber viele von ihnen sind spezifisch für Google Apps, Facebook, Twitter usw. Außerdem sind diese Apps darauf angewiesen, Benutzerdaten lokal in der WordPress-Benutzertabelle zu speichern. Ich würde es lieber nicht tun.

Danke für jede Hilfe!

Solutions Collecting From Web of "Überschreiben Sie WordPress-Benutzer mit OAuth2-Konto"

Wenn Sie nur die functionen überschreiben können, die sich in wp-includes / pluggable.php befinden, sollten Sie in der Lage sein, jede Art von Plugin-Konflikten zu vermeiden … es sei denn, Sie verwenden Plugins, die die gleichen steckbaren functionen überschreiben.

Stellen Sie nur sicher, dass Ihre functionen deklariert sind, bevor Pluggables geladen werden. Plugins werden vor der Pluggable-Datei geladen … Wenn Sie also Ihre function in einem Plugin überschreiben, können Sie sicher sein, dass sie geladen sind. Andernfalls stellen Sie sicher, dass Sie eine frühere Aktion verwenden, um dies zu tun.

Es gibt ziemlich viele Authentifizierungs-, Cookie- und benutzerbezogene functionen zur Verwendung.