Нужно проверить, сохранена ли дополнительная информация от OpenID-провайдера

Привет! Наш провайдер OpenID столкнулся со сбоем, в результате которого он случайно передал слишком много информации о пользователях (норвежский аналог номера социального страхования), и теперь они спрашивают, возможно ли, что наш экземпляр Discourse сохранил эти данные. Скорее всего, такая информация в ответе userinfo выглядела бы примерно так:

“norEduPersonNIN”: “23080374554”

Есть ли хоть какой-то шанс, что эта лишняя информация могла где-то сохраниться?

Мне это кажется маловероятным, но:

  • Сохраняется ли весь ответ где-то в логах или архивах?
  • Вызывает ли наличие такого тега сообщение об ошибке, которое где-то сохраняется или логируется?
  • Извлекает ли система и сохраняет ли всё, что возможно из ответа, «на всякий случай»?

Будем очень признательны за чёткий ответ в духе «никакого шанса» или «да, это сохраняется, но вот как удалить эту информацию» :slight_smile:

Привет, @steinhh, я считаю, что это лучшее описание:

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

Спасибо! Там ничего подозрительного не обнаружено. Я также попросил наших специалистов по «базе данных» сделать полный дамп базы, и поиск по содержимому ничего не дал. Уф. Это был инцидент, достойный газетной полосы, хотя, насколько мне известно, эквиваленты SSN сами по себе ещё не утекли, а лишь ошибочно были переданы клиентам аутентификации.

Если включена настройка сайта openid_connect_verbose_logging, то ответ от конечной точки userinfo записывается в лог: discourse-openid-connect/lib/omniauth_open_id_connect.rb at f31a869611a2fad8efadd9b2504440215169a391 · discourse/discourse-openid-connect · GitHub.

Спасибо! К счастью, это было отключено. Но вы имеете в виду «/log», а не «/logs»? Я не могу найти последний в директории установки (у нас прямая установка на RHEL8).

Да, директория называется log. Я почти уверен, что всё, имеющее отношение к вашей ситуации, можно найти в файле production.log.