Ограничить тему для конкретных пользователей

Есть ли способ, возможно, с помощью плагина, ограничить список пользователей, которые могут публиковать сообщения в публичной теме, определённым списком? В идеале этот список должен быть специфичным для каждой темы.

1 лайк

Не совсем понятно, что именно вы имеете в виду, но раздел «Настройки безопасности» — это то место, где можно настроить, кто имеет право создавать темы, отвечать на них или даже просматривать их в каждой категории. Так что, вероятно, вам нужно поместить тему, доступ к которой вы хотите ограничить, в категорию с нужными вам правами доступа. Например, «все» могут просматривать и отвечать, но создавать темы могут только «сотрудники».

2 лайка

Это на уровне категории. А что насчёт уровня темы?

1 лайк

Переведите тему в личные сообщения, если необходимы ограничения на уровне темы. Темы не поддерживают ограниченный доступ, за исключением того, который установлен на уровне категории.

6 лайков

Или просто создайте категорию для одной темы, если вам нужно, чтобы она была публичной, но ограничьте круг лиц, которым разрешено в ней публиковать. Позже вы сможете закрыть тему, переместить её в другую категорию и удалить специальную категорию с ограниченным доступом.

4 лайка

Какова причина ограничения пользователей/групп на уровне темы? У нас есть случай использования, когда мы хотим создать множество потоков, к которым группа пользователей будет иметь доступ только к определенному набору потоков. Например, Группа1 может получать доступ к Потокам 1, 4, 7, 10. Группа2 — к Потокам 2, 5, 8 и так далее. Здесь может быть много таких потоков и много таких групп. Создавать их все как категории не имеет особого смысла, хотя сейчас это, похоже, единственный доступный вариант.

Может ли кто-то объяснить, почему ограничение на распространение концепции разрешений на темы существует?

2 лайка

Темы с индивидуальными правами доступа уже существуют в Discourse, они называются Личные сообщения.

Темы внутри категорий уже наследуют права доступа на уровне категории; было бы невероятно запутанно и неинтуитивно, если бы можно было взаимодействовать с одной темой иначе, чем с другой.

Модель прав доступа проста и интуитивно понятна по замыслу; ваш вариант использования уже поддерживается Личными сообщениями.

1 лайк

Разве личное сообщение не означает, что оно будет видно только одному человеку? Здесь речь идет о создании одного потока, доступного группе пользователей. Поддерживает ли ЛС такую возможность?

2 лайка

Да, личные сообщения могут отправляться между любыми комбинациями пользователей и групп.

2 лайка

Но они не могут быть публичными. Было бы очень полезно иметь функционал, похожий на личные сообщения, где можно добавлять авторов или группы для внесения вкладов, но при этом это было бы видно всем.

2 лайка

Подумав об этом, я понял, что это было бы действительно полезно. Один из способов реализации — 1) сделать конкретные личные сообщения публичными в категории с соответствующей настройкой, или, возможно, 2) предоставить пользователям/группам на уровне темы разрешение на публикацию в закрытой теме.

Из этих вариантов решение #2 кажется наиболее прямым. В идеале люди могли бы запрашивать разрешение на публикацию.

Можно ли добавить эту функцию в дорожную карту?

Нет, это потребовало бы практически полной переписывания Discourse с нуля. Мы не реализуем и никогда не реализовывали разрешения на уровне тем, за исключением личных сообщений.

Конечно, вы можете преобразовывать темы в личные сообщения и наоборот.

3 лайка

А как насчет возможности сделать личные сообщения публично видимыми в определенной категории? Это было бы проще?