mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-11-13 08:00:49 -05:00
Consistently check whether a password may be set for a user. (#9636)
This commit is contained in:
parent
dd71eb0f8a
commit
8dd2ea65a9
5 changed files with 133 additions and 68 deletions
|
|
@ -41,7 +41,7 @@ class SetPasswordHandler(BaseHandler):
|
|||
logout_devices: bool,
|
||||
requester: Optional[Requester] = None,
|
||||
) -> None:
|
||||
if not self.hs.config.password_localdb_enabled:
|
||||
if not self._auth_handler.can_change_password():
|
||||
raise SynapseError(403, "Password change disabled", errcode=Codes.FORBIDDEN)
|
||||
|
||||
try:
|
||||
|
|
|
|||
|
|
@ -271,7 +271,7 @@ class UserRestServletV2(RestServlet):
|
|||
elif not deactivate and user["deactivated"]:
|
||||
if (
|
||||
"password" not in body
|
||||
and self.hs.config.password_localdb_enabled
|
||||
and self.auth_handler.can_change_password()
|
||||
):
|
||||
raise SynapseError(
|
||||
400, "Must provide a password to re-activate an account."
|
||||
|
|
|
|||
|
|
@ -1210,6 +1210,7 @@ class RegistrationBackgroundUpdateStore(RegistrationWorkerStore):
|
|||
self._invalidate_cache_and_stream(
|
||||
txn, self.get_user_deactivated_status, (user_id,)
|
||||
)
|
||||
self._invalidate_cache_and_stream(txn, self.get_user_by_id, (user_id,))
|
||||
txn.call_after(self.is_guest.invalidate, (user_id,))
|
||||
|
||||
@cached()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue