カテゴリ権限と新しい権限グループ

カテゴリにグループを追加する際、anonymous_userslogged_in_users のオプションを選択できますが、機能しません。

「いいね!」 2

これは、ベータ機能「詳細な匿名およびログイン済みグループの権限」を有効にする必要がないのでしょうか?

「いいね!」 1

はい、この問題は現在デフォルトで有効になっている機能が原因で発生しています。

「いいね!」 3

@martin これについて何かアイデアはありますか?

「いいね!」 1

報告ありがとうございます、確認します :eyes:

他のトピックでのあなたの回答から

このことについて考えるほど、心配が増しています。

カテゴリに「anonymous_users(匿名ユーザー)」のみを追加し、「logged_in_users(ログインユーザー)」を追加しない場合、どうなるでしょうか?
フォーラムが「login_required(ログイン必須)」の状態のまま「anonymous_users(匿名ユーザー)」を追加した場合、どうなるでしょうか?

また、現在の技術的な実装では、カテゴリ権限が「everyone(全員)」に設定されている場合、category_groups には単にエントリが存在せず、read_restrictedfalse に設定されています。

これは非常にシンプルで直感的です:権限が設定されていない場合、権限はグローバルなフォーラム権限(login_required 設定)によって決定され、それ以上の制限は適用されません。

したがって、この変更を行うと、膨大な複雑さが加わり、奇妙な組み合わせが可能になってしまいます(「anonymous users(匿名ユーザー)」と「staff(スタッフ)」を設定できる :grimacing:

私の提案は以下の通りです:

  • カテゴリ権限のオプションから「anonymous_users(匿名ユーザー)」を完全に削除する
  • 「everyone(全員)」と「logged_in_users(ログインユーザー)」を残す
  • 「trust_level_0(信頼レベル0)」は「logged_in_users(ログインユーザー)」と同等であるため、オプションから削除する

または、経験の浅い管理者には少し分かりにくくなるかもしれませんが、以下の案もあります:

  • カテゴリ権限のオプションから「anonymous_users(匿名ユーザー)」と「logged_in_users(ログインユーザー)」を削除する
  • 「everyone(全員)」(および TL0)を残す

いずれの場合も、「everyone(全員)」を残します。また、移行処理も必要ありません :wink:

「いいね!」 4

ご意見ありがとうございます。これが、最初は「全員」変更でカテゴリ権限について深く立ち入りたくなかった理由です :smiley:

ここで述べられていることの多くは、単に不可能にすればよいと思います。すでにACL(アクセス制御リスト)と、開発中のKanbanプラグインのより使いやすい権限UIに関するいくつかの予備システムに取り組んでいます。以下に例を示します。最終的にはカテゴリ権限をこれに切り替える予定です。

ここでは匿名ユーザーにKanbanボードの管理者権限を与えることが不可能であるなど、いくつかのルールが適用され、管理者が常にボードを管理できるような必須権限もサポートしています。

フォーラムがログイン必須の場合、匿名ユーザーを追加できないようにします。

これも、追加できる別の検証/制限です。

このようなケースに対しても、検証や警告を追加できます。

Discourse 至る所に存在するこのような暗黙的な権限は避けたいと考えています。代わりに、カテゴリが公開/読み取り制限なしの場合、ログインユーザーと匿名ユーザーが常に明示的に設定されるようにします。


とにかく、今のところこれについてあまり深く立ち入りたくありません。カテゴリを処理するまでにはまだ少し時間がかかります。ただし、最初の投稿(OP)は修正が必要なバグであることに同意するので、それでもこの対応を行います。

「いいね!」 1

別の問題を踏まえると、私はそのようなロジックは推奨しません。匿名ユーザーが既に権限リストに含まれている状態で、フォーラムをログイン必須に変更したらどうなるでしょうか?逆の場合も同様です。これは悪夢のような事態になり、管理者には不透明なものとなってしまいます。

私はこのような複雑さには非常に警戒しています。

「いいね!」 2

再び、多くの良い点があります。考えるべきことが多く、この分野は複雑です。カテゴリ周りの変更を行う際には、管理者の体験を確実に考慮に入れ、ここには多くの歴史があり、誰にも驚かせたくないと思っています。これらはすぐに実行されるものではなく、このプロジェクトに着手する際には、さまざまなシナリオを慎重に検討するのに長い時間がかかるでしょう。

「いいね!」 1

匿名ユーザーには設定できるがログインユーザーには設定できないという事実が、カテゴリ権限の文脈では問題視されるのに、サイト/プラグイン/テーマ設定を介して設定された権限の文脈では問題視されないのはなぜだろうと疑問に思います。簡単な例を挙げると、現在ではログインユーザーを追加せずに匿名ユーザーにスタイルガイドを公開することが可能になりました。匿名ユーザーにはカテゴリを表示するがログインユーザーには表示しないという方法よりも、これはより理にかなっているのでしょうか?

「いいね!」 1

いいえ、意味が通りません。実際にはカバーすべき別の境界条件に過ぎません…そのプラグインに対して anonymous_usersdisallowed_groups に追加します。また、このプラグインが有効になっている実際のサイトはそれほど多くないだろうと強く疑っているので、現時点ではこの設定ミスについてそれほど心配していません。

私はこの種の設定に対して一般的にこのように処理すると思います。また、mandatory_values を活用して、特定のグループが常に選択されるようにし、一部の場所で anonymous_users のみが残ってしまうことを防ぐこともできます。あるいは、設定の検証を利用して、「認証済みユーザーグループを少なくとも1つ選択しない限り、anonymous_users を選択できません」といったルールを設定することもできます。

これがなぜ必要なのか理解できません。オプションとして存在させることに何が問題があるのでしょうか?

これはサイト設定でのみ機能するのでしょうか、それともテーマコンポーネントでも機能するのでしょうか?

現時点ではテーマコンポーネントには適用されませんが、将来的には可能になります。いずれにせよ、ここで先走って話しています。