Как удалить все IP-адреса?

Существует ли способ удалить все IP-адреса из базы данных? Есть ли для этого какой-либо плагин или скрипт?

Пожалуйста, не спрашивайте, зачем это нужно, это просто требование, и я хочу это выполнить.

Я обратился на Ask.discourse.com и получил этот ответ, который, похоже, верен.

Удаление IP-адресов в Discourse с помощью Rails ИИ

pfaffman:

Где хранятся IP-адреса? Можно ли удалить их все через Rails?

DiscourseHelper:

Поиск

Поиск: Где хранятся IP-адреса пользователей и постов в базе данных Discourse, и можно ли удалить все сохранённые IP-адреса с помощью Rails или через задачу rake в целях конфиденциальности или соответствия GDPR?

Чтение

Прочитать: Проблемные поля IP-адресов

Проверка схемы базы данных

incoming_links, search_logs, topic_link_clicks, topic_views, user_profile_views, user_auth_tokens, user_auth_token_logs, screened_ip_addresses

Discourse хранит IP-адреса в нескольких таблицах базы данных, а именно:

  • incoming_links (ip_address)
  • search_logs (ip_address)
  • topic_link_clicks (ip_address)
  • topic_views (ip_address)
  • user_profile_views (ip_address)
  • user_auth_tokens (client_ip)
  • user_auth_token_logs (client_ip)
  • screened_ip_addresses (ip_address)

Вы можете удалить IP-адреса с помощью команд Rails, если у вас есть доступ к терминалу (самостоятельно размещённые установки). Для каждой таблицы можно установить соответствующий столбец (например, ip_address или client_ip) в NULL. Пример для incoming_links:

IncomingLink.update_all(ip_address: nil)

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

Для получения более подробной информации и контекста о конфиденциальности и возможных последствиях см. это обсуждение:
Проблемные поля IP-адресов

Обратите внимание: если вы используете размещённый сервис Discourse, у вас нет доступа к SSH или консоли Rails; в таких случаях обратитесь в службу поддержки Discourse по адресу team@discourse.org за рекомендациями.

Дайте знать, если вам нужны конкретные команды Rails для каждой таблицы или дополнительные советы!

Интересно, что, похоже, не включены основные поля ip_address и registration_ip_address из таблицы users.

Есть ещё несколько полей, которые я нашёл при поиске в Data Explorer:

  • screened_emails.ip_address
  • screened_urls.ip_address
  • user_histories.ip_address
  • user_ip_address_histories.ip_address

Не во всех из них есть записи на моём тестовом сайте, но, вероятно, стоит проверить и свои таблицы, чтобы убедиться, что они тоже пусты.

Ха! Это было лучшее, что я смог сделать со своего телефона. Казалось, что их много, поэтому я подумал, что он их точно должен был поймать. :rofl: