Die Syntax muss custom.user_field_x lauten, wobei x die numerische Feld-ID ist, die unter /admin/config/user-fields/{x}/edit angezeigt wird.
Diese Zuordnungsfunktion ist im Auth0-Plugin nicht direkt verfügbar.
Dennoch gibt es noch Möglichkeiten, das von Ihnen beschriebene zu erreichen:
- Erstellen einer Theme-Komponente. Sie können ein kleines Frontend-Skript hinzufügen, das ein benutzerdefiniertes Discourse-Feld automatisch mit einem bereits in Auth0 gespeicherten Wert synchronisiert. Wenn sich ein Benutzer beispielsweise anmeldet und das Feld leer ist, kann das Skript einen sicheren Endpunkt (eine kleine Cloud-Funktion) aufrufen, der den Feldwert von Auth0 abruft und das Discourse-Profil über die API aktualisiert.
- Verwendung von Automatisierungstools. Sie könnten auch externe Automatisierungsdienste wie Zapier oder Make verwenden, um diese Synchronisierung außerhalb von Discourse durchzuführen. Der Vorteil ist, dass Sie keinen Code schreiben/pflegen müssen, sondern nur für den Drittanbieterdienst bezahlen.
- Benutzerdefinierte Entwicklung. Wir können das Auth0-Plugin selbst erweitern, um benutzerdefinierte Claims nativ in Benutzerfelder bei der Anmeldung zu integrieren, oder ein benutzerdefiniertes Plugin erstellen, das mit dem Auth0-Plugin zusammenarbeitet.
Ein klarer Nachteil des Theme-Komponenten-Ansatzes ist, dass Sie benutzerdefinierten Code selbst schreiben und pflegen müssten, während Sie gleichzeitig auf Sicherheit achten müssten, um potenzielle Fehler oder Schwachstellen zu vermeiden. Ehrlich gesagt, würde ich diese Lösung für eine Produktionsseite wie Ihre nicht empfehlen.
Wenn ich in Ihrer Position wäre, würde ich mich eher für die zweite Option entscheiden, Drittanbieter-Tools zu verwenden, oder eine Funktionsanfrage oder eine Anfrage für benutzerdefinierte Arbeiten (abhängig von der Bewertung unserer Projektmanager) in Erwägung ziehen, um das Auth0-Plugin selbst zu verbessern.
Wenn Sie daran interessiert sind, die letzte Option zu erkunden, können wir die Diskussion privat fortsetzen.