J’aimerais intégrer Discourse avec Keycloak. Avez-vous des conseils sur la façon de procéder ? Merci.
Cordialement,
Ndacyayisenga
J’aimerais intégrer Discourse avec Keycloak. Avez-vous des conseils sur la façon de procéder ? Merci.
Cordialement,
Ndacyayisenga
Keycloak prend en charge OpenID Connect, vous pouvez donc l’intégrer à l’aide du Plugin d’authentification OpenID Connect
Il y a quelques années, j’ai écrit un plugin Keycloak (fournisseur d’identité) pour me connecter à Keycloak en utilisant les API d’authentification de Discourse. Je ne suis pas sûr de sa compatibilité avec les récents changements de Discourse SSO, mais si vous avez besoin de cette partie, je pourrais peut-être la publier à un moment donné.
@ldywicki Je serais ravi
Bonjour,
J’ai cherché plusieurs fois sur Discourse Meta, mais je n’ai pas trouvé ce que je cherchais (les discussions existantes n’ont pas de réponses ou semblent obsolètes).
Nous avons déjà Keycloak en cours d’exécution pour notre gestion des utilisateurs (et nous l’utilisons par exemple pour authentifier les utilisateurs de nos propres applications).
Nous avons maintenant configuré une instance Discourse et aimerions utiliser Keycloak comme fournisseur SSO.
Est-ce que DiscourseConnect est la bonne chose à utiliser ici ? Ou avons-nous besoin d’un plugin pour openid ou SAML, en plus ou à la place ?
Que devons-nous configurer du côté de Keycloak ? Est-ce juste une configuration standard, ou avons-nous besoin d’un plugin ?
Merci d’avance !
Gunnar
Salut @gschmid, bienvenue sur Discourse Meta ![]()
Le mieux dans ce cas est d’utiliser un plugin, peut-être OAuth2 Basic ou Discourse SAML en fonction de vos besoins spécifiques.
Je vous les laisse ci-dessous :
Si vous avez besoin d’aide, je serai heureux de vous aider ![]()
Salut Alexander,
Merci pour votre réponse rapide.
Donc, je n’ai pas du tout besoin de DiscourseConnect ? Quel est son but alors ?
Votre serveur d’authentification (ou peut-être l’API ou similaire) devrait avoir un processus compatible avec Discourse Connect (expliqué ici).
Keycloak n’a pas de prise en charge native dans ce cas, il est donc plus conseillé d’utiliser l’un des plugins mentionnés ci-dessus.
Je connais la documentation de DiscourseConnect, mais je n’ai pas réussi à rassembler les éléments. Par curiosité, quels serveurs d’authentification prennent cela en charge nativement ?
Quoi qu’il en soit, je vais maintenant essayer de mettre en place le(s) plugin(s) suggéré(s). Merci encore.
Ok, la première partie du travail est terminée - GitHub - Code-House/keycloak-discourse: Integration between Keycloak and Discorse.. using Keycloak APIs to do so..
Ce dépôt contient le code nécessaire pour permettre à Keycloak de récupérer des informations d’identité de Discourse en utilisant le protocole « Discourse Connect ».
Keycloak est un fournisseur d’identité générique - il offre des points de terminaison compatibles avec OpenID Connect pour authentifier les applications externes. Vous pouvez associer Keycloak à Discourse en utilisant le plugin discourse-openid-connect.
Discourse Connect est un peu différent. Autant que je sache, il permet de déléguer complètement la gestion des utilisateurs à Keycloak, ce qui n’est peut-être pas ce dont vous avez besoin pour commencer.
Notez que j’ai réalisé une intégration pour permettre à Keycloak de fonctionner avec Discourse en tant que fournisseur d’identité. D’après ce que je vois, il devrait être possible d’implémenter un point de terminaison compatible avec Discourse Connect pour Keycloak, mais c’est une autre histoire. ![]()
Le Discourse Connect est un peu différent. Autant que je sache, il permet de déléguer complètement la gestion des utilisateurs à Keycloak, ce qui n’est peut-être pas ce dont vous avez besoin pour commencer.
En fait, c’est exactement ce que j’aimerais avoir, mais comme il ne semble pas y avoir de solution simple à cela, je tente ma chance avec le plugin OIDC.
Je serai en mesure de fournir ce type d’intégration pour Keycloak. Cela nécessite une extension d’une API différente au sein de Keycloak (protocole de connexion). Rappelez-le-moi en juillet pour que je le fasse. ![]()
Salut @ldywicki , j’ai compilé la dernière version du module Keycloak Identity provider, mais elle ne semble pas compatible avec la dernière version de Discourse ni avec la dernière version de Keycloak. Penses-tu pouvoir fournir une mise à jour pour cela ? ![]()
Merci pour ton travail !
Salut Danir,
Je pourrai mettre à jour ce supplément, mais j’ai besoin d’un peu de temps. Tu m’as attrapé juste avant mon déménagement, j’aurai donc besoin de temps pour tester ce qui se passe avec des versions plus récentes de Keycloak.
@ldywicki
Qu’est-ce que votre Keycloak Spinup fait de différent du Keycloak standard ?
J’ai installé le Keycloak original via Docker.
Sans aucun message d’erreur dans la console, l’utilisateur se retrouve sur l’écran de connexion avec un symbole de chargement en rotation sans fin après authentification via Keycloak.
Je n’arrive pas à trouver la cause de ce problème. S’il vous plaît, aidez-moi.