# プライベートグループへの参加をユーザーに制限する

**URL:** https://meta.discourse.org/t/restricting-users-to-join-any-one-private-group/257859
**Category:** Development
**Created:** [2023 年 3 月 12 日午後 1:41 UTC](https://meta.discourse.org/t/restricting-users-to-join-any-one-private-group/257859 "2023-03-12T13:41:32Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![Krsh](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/krsh/32/296559_2.png) [@Krsh](https://meta.discourse.org/u/Krsh)
#### Post date: [2023 年 3 月 12 日午後 1:41 UTC](https://meta.discourse.org/t/restricting-users-to-join-any-one-private-group/257859/1 "2023-03-12T13:41:32Z")

</div>

こんにちは。

教育目的でプライベートフォーラムを運営しており、受講生のみが利用できます。

フォーラムには、受講生の専攻に基づいてアクセスが許可される多くのプライベートカテゴリがあります。たとえば、数学専攻の受講生は数学カテゴリにのみアクセスでき、科学カテゴリにはアクセスできません。現在、各プライベートカテゴリにプライベートグループがあり、プライマリカテゴリへのアクセスを許可するためにグループへの参加リクエストを手動で承認しています。

これを自動化したいと思います。受講生は、特定のバッジが付与されている場合、 **いずれか1つ** のプライベートグループに参加できるようになります。バッジはすでに作成しました。ユーザーが参加できるカスタムグループの数に制限を設けるにはどうすればよいですか？

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2023 年 3 月 12 日午後 5:26 UTC](https://meta.discourse.org/t/restricting-users-to-join-any-one-private-group/257859/2 "2023-03-12T17:26:21Z")

</div>

それを行うにはプラグインが必要です。

---

<div class="post-metadata">

### Author: ![Krsh](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/krsh/32/296559_2.png) [@Krsh](https://meta.discourse.org/u/Krsh)
#### Post date: [2023 年 3 月 13 日午前 2:50 UTC](https://meta.discourse.org/t/restricting-users-to-join-any-one-private-group/257859/3 "2023-03-13T02:50:54Z")

</div>

プラグイン開発に関するヒントを開発者に渡せるようにいくつか教えていただけますか。

開発が必要であることは理解しており、開発者カテゴリに投稿しました。

---

<div class="post-metadata">

### Author: ![thoka](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/thoka/32/115652_2.png) [@thoka](https://meta.discourse.org/u/thoka)
#### Post date: [2023 年 3 月 13 日午前 3:11 UTC](https://meta.discourse.org/t/restricting-users-to-join-any-one-private-group/257859/4 "2023-03-13T03:11:59Z")

</div>

グループへの招待についてご存知ですか？

ディスコース以外で学生グループにリーチする方法があれば、このチャネルを使用して招待リンクを伝えることができます。

学生に直接会いますか？  
その場合は、QRコード経由で招待状を提示できます。

---

<div class="post-metadata">

### Author: ![Heliosurge](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/heliosurge/32/571810_2.png) [@Heliosurge](https://meta.discourse.org/u/Heliosurge)
#### Post date: [2023 年 3 月 13 日午後 7:04 UTC](https://meta.discourse.org/t/restricting-users-to-join-any-one-private-group/257859/5 "2023-03-13T19:04:18Z")

</div>

Automation プラグインまたは Pavilion の Wizard プラグインは、これに役立つ可能性がありますか？

---

<div class="post-metadata">

### Author: ![Canapin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/canapin/32/119591_2.png) [@Canapin](https://meta.discourse.org/u/Canapin)
#### Post date: [2023 年 3 月 13 日午後 9:08 UTC](https://meta.discourse.org/t/restricting-users-to-join-any-one-private-group/257859/6 "2023-03-13T21:08:22Z")

</div>

@thoka さんに同意します。グループへのアクセスを許可するためにバッジを手動で割り当てたい場合、招待状も同様に迅速です。

各グループに関連付けられたバッジが必要な場合、またはそうしたい場合は、ユーザーが所属するグループに応じてバッジを付与する新しいバッジSQLクエリを作成できます: [Creating triggered custom badge queries](https://meta.discourse.org/t/create-triggered-custom-badge-queries/19336?u=canapin)

この組み合わせにより、学生をグループに配置し、バッジを付与することができます。これらすべてをカスタムプラグインを作成せずに実現できます。

* * *

代替案として、@Heliosurge さんが提案したように、公式プラグインの[Automation](https://meta.discourse.org/t/discourse-automation/195773)を使用して、カスタムフィールドの値に応じてユーザーをグループに配置できるかもしれません。これにはスクリプトがあります:

 ![image](https://global.discourse-cdn.com/meta/original/4X/d/8/e/d8e3ecd72c5cb6f404ec0b5f07e6dd69822e0bc1.png)  
どのように機能するかはわかりませんが、機能させるにはカスタムコードが必要になると思います。

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [2023 年 3 月 13 日午後 9:38 UTC](https://meta.discourse.org/t/restricting-users-to-join-any-one-private-group/257859/7 "2023-03-13T21:38:11Z")

</div>

もしあなたが何らかの学生管理システムを使用しており、他の場所でSSOを利用している場合、SSOペイロードでグループメンバーシップを管理できる可能性があります。プラグインやその他のものは必要ありません。

---

<div class="post-metadata">

### Author: ![Kushalghosh9899](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/kushalghosh9899/32/292844_2.png) [@Kushalghosh9899](https://meta.discourse.org/u/Kushalghosh9899)
#### Post date: [2023 年 3 月 17 日午前 3:37 UTC](https://meta.discourse.org/t/restricting-users-to-join-any-one-private-group/257859/8 "2023-03-17T03:37:39Z")

</div>

こんにちは。私も同様に実装したいと考えています。例えば、カスタムバッジが2つ、プライベートグループが2つあるとします。バッジA、バッジB、グループA、グループBです。ユーザーにバッジAが付与されている場合、グループAにのみ参加でき、グループBには参加できないようにします。逆も同様です。  
これを私のシステムにも実装するにはどうすればよいですか？  
手順を簡単に説明してください。
