diff options
author | Brendan Abolivier <babolivier@matrix.org> | 2021-07-16 18:11:53 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-16 18:11:53 +0200 |
commit | 36dc15412de9fc1bb2ba955c8b6f2da20d2ca20f (patch) | |
tree | c0e97c91cdd0270370fd5fbe7a5a085a996fd3aa /synapse/handlers/register.py | |
parent | Do not include signatures/hashes in make_{join,leave,knock} responses. (#10404) (diff) | |
download | synapse-36dc15412de9fc1bb2ba955c8b6f2da20d2ca20f.tar.xz |
Add a module type for account validity (#9884)
This adds an API for third-party plugin modules to implement account validity, so they can provide this feature instead of Synapse. The module implementing the current behaviour for this feature can be found at https://github.com/matrix-org/synapse-email-account-validity. To allow for a smooth transition between the current feature and the new module, hooks have been added to the existing account validity endpoints to allow their behaviours to be overridden by a module.
Diffstat (limited to 'synapse/handlers/register.py')
-rw-r--r-- | synapse/handlers/register.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/synapse/handlers/register.py b/synapse/handlers/register.py index 26ef016179..056fe5e89f 100644 --- a/synapse/handlers/register.py +++ b/synapse/handlers/register.py @@ -77,6 +77,7 @@ class RegistrationHandler(BaseHandler): self.identity_handler = self.hs.get_identity_handler() self.ratelimiter = hs.get_registration_ratelimiter() self.macaroon_gen = hs.get_macaroon_generator() + self._account_validity_handler = hs.get_account_validity_handler() self._server_notices_mxid = hs.config.server_notices_mxid self._server_name = hs.hostname @@ -700,6 +701,10 @@ class RegistrationHandler(BaseHandler): shadow_banned=shadow_banned, ) + # Only call the account validity module(s) on the main process, to avoid + # repeating e.g. database writes on all of the workers. + await self._account_validity_handler.on_user_registration(user_id) + async def register_device( self, user_id: str, |