diff options
author | Richard van der Hoff <richard@matrix.org> | 2017-12-20 19:31:00 +0000 |
---|---|---|
committer | Richard van der Hoff <richard@matrix.org> | 2017-12-20 19:31:00 +0000 |
commit | 75c1b8df01273aafbbe25afb47582021dbb82498 (patch) | |
tree | 384bdcea69f433003127d5afb307a7ed420139ba /synapse/rest | |
parent | Merge pull request #2683 from seckrv/fix_pwd_auth_prov_typo (diff) | |
download | synapse-75c1b8df01273aafbbe25afb47582021dbb82498.tar.xz |
Better logging when login can't find a 3pid
Diffstat (limited to 'synapse/rest')
-rw-r--r-- | synapse/rest/client/v1/login.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/synapse/rest/client/v1/login.py b/synapse/rest/client/v1/login.py index 5669ecb724..45844aa2d2 100644 --- a/synapse/rest/client/v1/login.py +++ b/synapse/rest/client/v1/login.py @@ -191,19 +191,25 @@ class LoginRestServlet(ClientV1RestServlet): # convert threepid identifiers to user IDs if identifier["type"] == "m.id.thirdparty": - if 'medium' not in identifier or 'address' not in identifier: + address = identifier.get('address') + medium = identifier.get('medium') + + if medium is None or address is None: raise SynapseError(400, "Invalid thirdparty identifier") - address = identifier['address'] - if identifier['medium'] == 'email': + if medium == 'email': # For emails, transform the address to lowercase. # We store all email addreses as lowercase in the DB. # (See add_threepid in synapse/handlers/auth.py) address = address.lower() user_id = yield self.hs.get_datastore().get_user_id_by_threepid( - identifier['medium'], address + medium, address, ) if not user_id: + logger.warn( + "unknown 3pid identifier medium %s, address %r", + medium, address, + ) raise LoginError(403, "", errcode=Codes.FORBIDDEN) identifier = { |