Приглашение к выкупу позволило пользователю получить доступ к форуму ДО одобрения

В нашем форуме установлены следующие настройки:

  1. login_required ON
  2. must_approve_users ON
  3. min_trust_level_to_allow_invite 2 : member

При тестировании приглашений на форум я обнаружил следующее:

  1. Когда пользователь TL2 приглашает другого пользователя по электронной почте *
  2. И тот переходит по ссылке приглашения в письме *
  3. И заполняет поля и отправляет форму

Происходит следующее — они сразу попадают на форум (как будто уже одобрены) и могут читать его по своему усмотрению. Они не должны иметь такой возможности до получения одобрения.

На самом деле они остаются не одобренными. Если они попытаются снова зайти на сайт, им будет отказан доступ с обычным сообщением «вы не одобрены».

5 лайков

Действительно, я могу воспроизвести это в версии 2.8.0.beta10 ( bbca25e875 )

3 лайка

Я могу подтвердить это на своём тестовом сайте (17ec3bc5b9):

  • Требуется вход в систему
  • Необходимо утверждать пользователей
  • Пользователи уровня TL2 могут отправлять приглашения

При этом мой приглашённый мог просматривать и публиковать сообщения во время этого «посещения для регистрации» без утверждения.

3 лайка

Это сложная ситуация.

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

Вообще говоря, я не уверен, что это имеет смысл: зачем приглашать кого-то на форум, чтобы сразу заблокировать его?

Я бы сказал, что ваше ближайшее временное решение — запретить приглашения на tl2/3. Это хотя бы устранит эту странность.

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

@dan, что думаешь?

9 лайков

Готово. Конечно, у пользователей TL4 эта проблема всё ещё останется, но у меня таких нет, так что всё отлично!

Мне кажется, это разумно как постоянное решение.

Я немного удивился, что мои пользователи могли приглашать других!

6 лайков

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

В какой-то мере это, я полагаю, зависит от сообщества и от того, насколько вы доверяете своим пользователям. Возможно, в будущем параметр must_approve_users станет выпадающим списком с вариантами: нет, да или если не приглашён.

Я добавлю это в свой список задач.

6 лайков

Исправлено в SECURITY: Do not sign in unapproved users (#15552) · discourse/discourse@584c6a2 · GitHub. Спасибо за отчет @nathank!

6 лайков

Эта тема была автоматически закрыта через 31 час. Новые ответы больше не принимаются.