Discourseとkeycloakの連携

DiscourseとKeycloakを統合したいのですが、どのように進めればよいかアドバイスをお願いします。
よろしくお願いいたします。
Ndacyayisenga

Keycloak は OpenID Connect をサポートしているため、OpenID Connect 認証プラグイン を使用して統合できます。

「いいね!」 1

数年前に、Discourse認証APIを使用してKeycloakにサインインするためのKeycloakプラグイン(IDプロバイダー)を作成しました。DiscourseのSSOに対する最近の変更と互換性があるかどうかわかりませんが、その部分が必要な場合は、いつか公開できるかもしれません。

@ldywicki 喜んで

こんにちは。
Discourse Meta を複数回検索しましたが、探しているものが見つかりません(既存のディスカッションには回答がないか、時代遅れのように思われます)。

すでにユーザー管理のために Keycloak を実行しており(独自のアプリケーションのユーザー認証などに使用しています)、
今回 Discourse インスタンスをセットアップし、Keycloak を SSO プロバイダーとして使用したいと考えています。

DiscourseConnect を使用するのが正しいのでしょうか?それとも、openid または SAML のプラグインが別途(または追加で)必要になりますか?
Keycloak 側で設定する必要があるものは何ですか?標準設定だけでよいのでしょうか、それともプラグインが必要ですか?

よろしくお願いいたします。
Gunnar

「いいね!」 1

こんにちは、@gschmid さん、Discourse Meta へようこそ :wave:

この場合、最も良いのはプラグインを使用することです。具体的なニーズに応じて、OAuth2 Basic または Discourse SAML が考えられます。

以下にリンクを記載します。

もし必要であれば、喜んでお手伝いさせていただきます :grinning_face_with_smiling_eyes:

アレクサンダー様

迅速なご返信ありがとうございます。

では、DiscourseConnectは全く必要ないということでしょうか? それは何のためにあるのですか?

認証サーバー(またはAPIなど)には、Discourse Connectと互換性のあるプロセスがあるはずです(こちらで説明されています)。

Keycloakにはこの場合のネイティブサポートがないため、上記で言及されているプラグインのいずれかを使用することをお勧めします。

DiscourseConnect のドキュメントは知っていますが、うまくまとめられませんでした。ちなみに、どの認証サーバーが標準でこれをサポートしていますか?

いずれにせよ、提案されたプラグインをセットアップしてみます。重ねてお礼申し上げます。

「いいね!」 1

作業の最初の部分は完了しました - https://github.com/Code-House/keycloak-discourse。
このリポジトリには、Keycloak が「Discourse Connect」プロトコルを使用して Discourse から ID 情報を取得するために必要なコードが含まれています。

「いいね!」 2

Keycloak は汎用的な ID プロバイダーであり、外部アプリケーションを認証するための OpenID Connect 互換のエンドポイントを提供します。Keycloak と Discourse は discourse-openid-connect プラグイン を使用して連携させることができます。
Discourse Connect は少し異なります。私の理解では、ユーザー管理を完全に Keycloak に委任することが可能ですが、これは開始時点では必要ないかもしれません。

なお、Keycloak を Discourse の ID プロバイダーとして 使用できるように統合を行いました。私の見解では、Keycloak 用に Discourse Connect 互換のエンドポイントを実装することは可能ですが、それはまた別の話です。 :wink:

「いいね!」 3

Discourse Connect は少し異なります。私の理解では、ユーザー管理を完全にKeycloakに委任することを許可しているようですが、これは開始時点では必要ないかもしれません。」

実際、これはまさに私が望んでいることですが、簡単な解決策がないように思われるため、OIDCプラグインで運試しをしています。

Keycloak のこのような統合を提供できるようになります。Keycloak 内の別の API (ログイン プロトコル) の拡張が必要です。7 月に思い出させてください。 :wink:

「いいね!」 3

@ldywicki様、Keycloak IDプロバイダーモジュールの最新バージョンをコンパイルしましたが、最新のDiscourseおよび最新のKeycloakバージョンとの互換性がないようです。更新を提供していただけますでしょうか?:blush: \nご尽力に感謝いたします!

Danir様

このサプリメントは更新できますが、少し時間がかかります。引っ越しの直前に連絡をいただいたため、最新のKeycloakで何が起こっているのかをテストするには、もう少し時間が必要です。

@ldywicki
あなたのKeycloak Spinupは、バニラKeycloakと何が違うのですか?

私はDocker経由でオリジナルのKeycloakをインストールしました。
コンソールにエラーメッセージは表示されませんが、Keycloak経由で認証した後、ユーザーはログイン画面で無限に回転するローディングシンボルが表示されてしまいます。

原因が見つかりません。助けてください。