mirror of
https://mau.dev/maunium/synapse.git
synced 2024-11-13 21:41:30 +01:00
Remove local threepids on account deactivation (#6426)
This commit is contained in:
parent
9b9ee75666
commit
2030193e55
3 changed files with 17 additions and 0 deletions
1
changelog.d/6426.bugfix
Normal file
1
changelog.d/6426.bugfix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Clean up local threepids from user on account deactivation.
|
|
@ -95,6 +95,9 @@ class DeactivateAccountHandler(BaseHandler):
|
||||||
user_id, threepid["medium"], threepid["address"]
|
user_id, threepid["medium"], threepid["address"]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Remove all 3PIDs this user has bound to the homeserver
|
||||||
|
yield self.store.user_delete_threepids(user_id)
|
||||||
|
|
||||||
# delete any devices belonging to the user, which will also
|
# delete any devices belonging to the user, which will also
|
||||||
# delete corresponding access tokens.
|
# delete corresponding access tokens.
|
||||||
yield self._device_handler.delete_all_devices_for_user(user_id)
|
yield self._device_handler.delete_all_devices_for_user(user_id)
|
||||||
|
|
|
@ -577,6 +577,19 @@ class RegistrationWorkerStore(SQLBaseStore):
|
||||||
return self._simple_delete(
|
return self._simple_delete(
|
||||||
"user_threepids",
|
"user_threepids",
|
||||||
keyvalues={"user_id": user_id, "medium": medium, "address": address},
|
keyvalues={"user_id": user_id, "medium": medium, "address": address},
|
||||||
|
desc="user_delete_threepid",
|
||||||
|
)
|
||||||
|
|
||||||
|
def user_delete_threepids(self, user_id: str):
|
||||||
|
"""Delete all threepid this user has bound
|
||||||
|
|
||||||
|
Args:
|
||||||
|
user_id: The user id to delete all threepids of
|
||||||
|
|
||||||
|
"""
|
||||||
|
return self._simple_delete(
|
||||||
|
"user_threepids",
|
||||||
|
keyvalues={"user_id": user_id},
|
||||||
desc="user_delete_threepids",
|
desc="user_delete_threepids",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue