サービスプロバイダーとしてのSCIM対応を追加

すでにこちらで述べたように、DiscourseがSCIMプロトコルをサポートすると素晴らしい機能になると思います。SCIMは、RFC7644およびRFC7643を通じてIETFによって提案された標準であり、シンプルなRest APIを介したユーザー/グループ管理のソリューションを提供することを目的としています。私たちのユースケースは、SCIMクライアントとして機能する別のサービス(この場合はKeycloak)を介して、ユーザーIDとグループメンバーシップを管理することです。DiscourseはSCIMサービスプロバイダーとして機能します。既存のSSOおよび集中型アカウント作成に加えて、以下の利点があります。

  • ユーザーをグループに割り当てる。
  • 複数のアプリでユーザー情報を即座に変更する。
  • SSOから削除されたときにユーザーを削除する。
  • 標準的な方法でユーザーまたはグループのリストを取得する。

NGIからNLNetを通じてSCIM実装のための資金提供を受けました。提案や関連する作業については、こちらのフォーラムで読むことができます。現時点ではDiscourseプラグインに最初のソリューションを実装しようと思いますが、将来的にはDiscourseコアに統合できると良いでしょう。ご意見やご感想をお聞かせください!

「いいね!」 5

エンドポイントが .well-known/scim/Users のようなものではなく /Users/Groups を使用しているのは奇妙に思えます。多くのアプリケーションで既存のルートと競合することが保証されているようです。

もし予算に余裕があれば、喜んでお手伝いします。

もしそれが適切に記述され、広く使用される(またはいくつかのエンタープライズ顧客によって要求される)ようになれば、公式プラグインになる可能性があると想像できます。

OAuth2 でさえプラグインであることを考えると、コアの一部になることは決してないと思います。

「いいね!」 4

SCIM エンドポイントのプレフィックスとして、api/scim/v2/Users のような任意のパス、または推奨される一般的なパスを使用できると考えています。

はい、コアに関する懸念は理解しています。そのため、公式プラグインにすることが目標となるかもしれません。協力のお申し出もありがとうございます。追加の予算はありませんが、今後の展開を見ていきましょう。

「いいね!」 1

ああ。それは理にかなっています。そういうことだろうと思ったのですが、ざっと読んだだけではわかりませんでした。他の認証プラグインを参考にすることをお勧めします。

「auth」という名前の公式プラグインは次のとおりです。

discourse-apple-auth/                  discourse-microsoft-auth/
discourse-authentication-validations/  discourse-oauth2-basic/
discourse-auth-no-email/               discourse-vk-auth/
discourse-development-auth/            discourse-wikimedia-auth/

面白そうなプロジェクトですね。

「いいね!」 1

プラグインの最初のバージョンがこちらで利用可能です。

マッピングはまだ非常にシンプルで、ユーザーとグループの基本的なフィールドのみが機能します。Keycloak SCIMプラグインでテストしたところ、Keycloakでユーザーを追加/変更できるようになり、それらはDiscourseに作成/更新されます。Keycloak SCIMプラグインはこちらです。

フィードバックはいつでも歓迎します :slight_smile: 私たちの環境でKeycloakとのテストをさらに行い、Authentikでもテストしたいと考えています。

「いいね!」 4

これは素晴らしいですね、素晴らしいアイデアです。テストするのが楽しみです。ありがとうございます!

Plugin カテゴリにトピックとして投稿していただけると嬉しいです :slight_smile:

「いいね!」 1

プラグインのカテゴリでは、投稿ボタンが無効になっており、そのカテゴリに投稿する権限がないというメッセージが表示されます。

@plugin_authors グループに参加してください。これにより、そのカテゴリにトピックを作成できます。

ありがとうございます。リクエストを送信しました :slight_smile:

「いいね!」 1

…そして最終的に投稿されました: SCIM Plugin

「いいね!」 2