Le code qui effectue l’anonymisation :
- discourse/app/services/user_anonymizer.rb at main · discourse/discourse · GitHub
- discourse/app/jobs/regular/anonymize_user.rb at main · discourse/discourse · GitHub
Il va :
- Le nom d’utilisateur est changé en :
anon#<nombre aléatoire> - Le mot de passe est rendu aléatoire (et invalide)
- Le nom est supprimé ou changé en nom d’utilisateur
- La date de naissance est supprimée
- Le titre est supprimé
- L’avatar est supprimé
- Optionnellement, l’IP est anonymisée
- Les e-mails sont changés en
<nom d'utilisateur>@anonymized.invalid - L’emplacement dans le profil est supprimé
- Le site web dans le profil est supprimé
- La biographie est supprimée
- L’arrière-plan du profil est supprimé
- L’arrière-plan de la carte est supprimé
- Les champs personnalisés de l’utilisateur sont supprimés
- Le SSO est effacé
- Les clés API sont supprimées
- Les invitations et les e-mails sont supprimés
Comme le nom d’utilisateur est modifié, Discourse essaiera de remplacer le nom d’utilisateur dans tous les messages.
L’inversion est pratiquement impossible, mais des informations utilisateur peuvent rester dans des messages individuels.