diff options
author | Matthew Hodgson <matthew@arasphere.net> | 2018-01-22 13:57:22 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-22 13:57:22 +0000 |
commit | d84f65255e770c3fe513ed6418081b4fba264649 (patch) | |
tree | d825aad8fc1ea2ae6934ae4b21b25916ef6e8d86 /synapse/handlers | |
parent | Merge pull request #2814 from matrix-org/rav/fix_urlcache_thumbs (diff) | |
parent | fix typo (thanks sytest) (diff) | |
download | synapse-d84f65255e770c3fe513ed6418081b4fba264649.tar.xz |
Merge pull request #2813 from matrix-org/matthew/registrations_require_3pid
add registrations_require_3pid and allow_local_3pids
Diffstat (limited to 'synapse/handlers')
-rw-r--r-- | synapse/handlers/register.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/synapse/handlers/register.py b/synapse/handlers/register.py index 5b808beac1..9021d4d57f 100644 --- a/synapse/handlers/register.py +++ b/synapse/handlers/register.py @@ -25,6 +25,7 @@ from synapse.http.client import CaptchaServerHttpClient from synapse import types from synapse.types import UserID from synapse.util.async import run_on_reactor +from synapse.util.threepids import check_3pid_allowed from ._base import BaseHandler logger = logging.getLogger(__name__) @@ -293,7 +294,7 @@ class RegistrationHandler(BaseHandler): """ for c in threepidCreds: - logger.info("validating theeepidcred sid %s on id server %s", + logger.info("validating threepidcred sid %s on id server %s", c['sid'], c['idServer']) try: identity_handler = self.hs.get_handlers().identity_handler @@ -307,6 +308,11 @@ class RegistrationHandler(BaseHandler): logger.info("got threepid with medium '%s' and address '%s'", threepid['medium'], threepid['address']) + if not check_3pid_allowed(self.hs, threepid['medium'], threepid['address']): + raise RegistrationError( + 403, "Third party identifier is not allowed" + ) + @defer.inlineCallbacks def bind_emails(self, user_id, threepidCreds): """Links emails with a user ID and informs an identity server. |