Ошибка входа через SAML в Nextcloud с неподготовленной учетной записью

Мы тестируем обновление с Nextcloud 16 до Nextcloud 17, и все работает хорошо, за исключением входа через SAML. Мы используем user_saml 2.4.2. Каждый раз, когда мы пытаемся войти через SAML, кажется, что это работает до окончательного перенаправления в Nextcloud. Затем мы получаем следующее сообщение:

Аккаунт не инициализирован.
Ваш аккаунт не инициализирован, поэтому доступ к этой службе невозможен.

Я пробовал очищать файлы cookie, использовать режим инкогнито и очищать сеансы на стороне сервера в Redis, но ничего не помогает. Мы проверили с нашим IdP (Azure AD), и пользователю определенно разрешен доступ к этому приложению. Мы также подтвердили, что в Nextcloud существует соответствующая учетная запись пользователя, поэтому мы не уверены, в чем проблема.


person GuyPaddock    schedule 21.08.2020    source источник


Ответы (1)


Оказалось, что в нашей промежуточной среде не было надлежащего сертификата IdP x.509 для приложения/службы Azure AD, в которую входил пользователь. Другими словами, нашей рабочей средой обычно является files.ourdomain.com, а нашей промежуточной средой — dev.files.ourdomain.com, но сертификат, который промежуточный экземпляр Nextcloud использовал из Azure AD, соответствовал регистрации приложения для files.ourdomain. com -- живая среда. Nextcloud и модуль аутентификации SAML, по-видимому, не регистрируют ничего полезного, чтобы сказать вам, что это основная причина.

Для исправления нам пришлось:

  1. Войдите в систему с локальной учетной записью администратора Nextcloud (используя /login?direct).
  2. Перейдите в меню пользователя в правом верхнем углу страницы.
  3. Перейдите к аутентификации SSO и SAML.
  4. Разверните Показать дополнительные параметры поставщика удостоверений….
  5. Замените содержимое общедоступного сертификата x.509 поставщика удостоверений сертификатом, предоставленным Azure AD.
person GuyPaddock    schedule 21.08.2020