[bug] Removing a user only deactivates the account #727
Labels
No labels
approved, awaiting change
bug
configuration
documentation
duplicate
enhancement
extremely low priority
feature request
Fix it yourself
help wanted
invalid
mastodon_api
needs docs
needs tests
not a bug
planned
pleroma_api
privacy
question
static_fe
triage
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: AkkomaGang/akkoma#727
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Your setup
From source
Extra details
No response
Version
v3.12.1
PostgreSQL version
15
What were you trying to do?
Deleting a user, through admin-fe or with
MIX_ENV=prod mix pleroma.user rm
deactivates the account, but never fully removes it.This is quite problematic, especially for instances running in the EU that have to comply with GDPR.
What did you expect to happen?
The account actually gets deleted
What actually happened?
The account still shows up in
MIX_ENV=prod mix pleroma.user list
, and the username/email is still taken.Logs
No response
Severity
I cannot use it as easily as I'd like
Have you searched for this issue?
I’m guessing this is done to prevent someone else later registering with the same username. For remote instances (which missed deletes) it’d would look like the same, previous user (since our user AP ids directly use the username) meaning:
publicKey
If a user was deleted by an admin for moderation reasons, keeping the email locked might also be desirable (do we have another way to block signups from certain mail addresses?)
But yeah, all other fields should probably be best cleaned out to not retain any unnecessary personal info.
Turns out purging all fields except
id
,ap_id
andnickname
is already implemented since ~4 years ago# https://gdpr.eu/right-to-be-forgotten/
(side note: perhaps it’d be cleaner to remove the user from the db and reinsert with just the intended-to-be-kept rows within one transaction to avoid accidentally forgetting to clear a field, but it also works as is)
I cannot reproduce the described issue with emails; after deleting with
mix pleroma.user rm
all fields in the DB are cleared and i can signup with the same email again; only the username is now (intentionally) forever unavailable.The data from
pleroma.user list
does not contain any personal details, only permissions etc and the unique nickname.