Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

Fix a long-standing bug where Synapse would not unbind third-party identifiers for Application Service users when deactivated and would not emit a compliant response.#16617

Merged
reivilibre merged 2 commits intodevelopfrom
rei/as_deactiv_is
Nov 9, 2023
Merged

Conversation

@reivilibre
Copy link
Contributor

Fixes: #16608

Base: develop

Original commit schedule, with full messages:

  1. Don't skip unbinding 3PIDs and returning success status when deactivating AS user
    Fixes Deactivating an account as an application service using user_id yields a response not containing id_server_unbind_result #16608

Signed-off-by: Olivier Wilkinson (reivilibre) <oliverw@matrix.org>
Copy link
Member

@clokep clokep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems reasonable to me!

if requester.app_service:
await self._deactivate_account_handler.deactivate_account(
requester.user.to_string(), body.erase, requester
# allow ASes to deactivate their own users:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This somehow made me think we should be checking if the appservice owns the user, but requester.app_service wouldn't exist unless the AS owned the user.

@reivilibre reivilibre merged commit dc7f068 into develop Nov 9, 2023
@reivilibre reivilibre deleted the rei/as_deactiv_is branch November 9, 2023 20:18
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Deactivating an account as an application service using user_id yields a response not containing id_server_unbind_result

2 participants