Continuing the discussion from Providing data for GDPR:
I did a first pass over Discourse’s tables, and I found several places where IP addresses are being accidentally correlated with user IDs. This is toxic data generating liability for Discourse forums.
List of problematic IP address fields:
incoming_links: stores timestamped IP address correlated with user ID and an exact post ID, topic ID, and Referer: header
Fixed Storage: PR#5826
search_logs: stores timestamped IP address correlated with user ID and exact search term
Fixed Storage, Retention: PR#5851
topic_link_clicks: stores timestamped IP address correlated with user ID and clicked link
Fixed Storage: PR#5852
topic_views: stores timestamped IP address
Fixed Storage: PR#5850- user_profile_views: stores timestamped IP address
Non-problematic IP address fields:
- user_auth_tokens, user_auth_token_logs: stores timestamped IP address correlated with user ID and device identifier
- Data purged periodically, but
there should be a conditional notice in the Privacy Policy if verbose auth token logs are enabled
- Data purged periodically, but
- screened_email, screened_url, screened_ip_addresses: Only created when a user is banned for being a spammer.
- api_keys: List of IPs inputted by admin.
Filing this as a privacy-bug.
