Wenn sich der Benutzer in der externen Anwendung befindet, klickt er auf eine Anmeldeschaltfläche und wird durch den SSO-Provider-Flow von Discourse geleitet, bevor er zurück zur externen Anwendung weitergeleitet wird. Diese externe Anwendung kann eine Sitzung mit den Benutzerdaten speichern. Wenn sich der Benutzer bei Discourse abmeldet, kann der Webhook die Sitzung der externen Anwendung löschen. Ich bin mir nicht sicher, aber ich glaube, der Webhook-Header lautet X-Discourse-Event: user_logged_out.
Bearbeitung: Die Abmeldung von der externen Seite erfolgt über die Discourse-API.
Anstatt Discourse zu fragen, ob ein Benutzer angemeldet ist, können Sie die externe Anwendung fragen. In meinem Fall dient dies nur dazu, beispielsweise die Anmeldeschaltfläche auf der externen Seite auszublenden.
Ich kann meinen Code später noch einmal überprüfen. Ich habe ihn schon eine Weile nicht mehr angesehen, aber ich glaube, er hat etwas Ähnliches gemacht.