Новые пользователи, нажимающие на ссылку категории, видят «доступ к этому форуму только по приглашению» и не могут войти через OAuth2

Всем привет,

У нас в экземпляре Discourse есть приватная категория, доступная только определённой группе пользователей. Мы создали ссылку, чтобы новые пользователи могли получить доступ к этой категории после входа через OAuth2.

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

«Извините, доступ к этому форуму осуществляется только по приглашению».

Из-за этого они не могут перейти к процессу входа через OAuth2 и никогда не попадают в категорию. Существующие пользователи получают доступ без проблем.

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

Чем вы можете помочь

  • Почему сайт показывает сообщение «только по приглашению», хотя мы хотим разрешить вход через OAuth2 для новых пользователей?

  • Есть ли настройка вроде oauth2 allow uninvited users или invite only, которую нам нужно изменить?

  • Как правильно настроить систему, если мы хотим:

    • чтобы сайт не был доступен только по приглашению,

    • чтобы пользователи OAuth2 могли создавать новые учётные записи при входе,

    • и чтобы права группы ограничивали доступ к категории после входа?

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

Привет! Пожалуйста, проверьте настройку сайта Discourse invite only и отключите её, если она включена.

Отключение invite only позволит новым пользователям входить в систему или регистрироваться через OAuth2.
После входа вы можете использовать правила членства в группах (автоматизацию или ручное назначение) для предоставления им доступа к приватной категории.

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

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

Пожалуйста, проверьте обсуждение здесь:

и просмотрите значения в полях «add groups», «groups» и «remove groups» в ваших логах?

Недавно у нас возникла аналогичная проблема, и мы решили её, отключив опцию «Сопоставление по email в OpenID Connect» в настройках плагина OpenID Connect.

Главное отличие в нашем случае заключается в том, что мы используем самохостинговый экземпляр Authentik в качестве SSO, а также у нас есть вебхук Authentik, который создаёт учётную запись Discourse для новых пользователей после настройки их учётной записи в Authentik. В этом вебхуке сначала создаётся учётная запись Discourse, а затем она добавляется в группы Discourse в зависимости от групп, к которым имеет доступ учётная запись Authentik.

Другие актуальные настройки (отличные от значений по умолчанию), которые у нас настроены:

В настройках входа:

  • Требуется вход
  • Только по приглашению
  • Включить локальные входы (отключено)
  • Включить локальные входы через email (отключено)
  • Включить кнопку регистрации (отключено)
  • Пропуск подтверждения создания при аутентификации (включено)

В настройках плагина OpenID Connect:

  • Область авторизации OpenID Connect (email openid profile)
  • Сопоставление по email в OpenID Connect (отключено)