diff options
author | Richard van der Hoff <github@rvanderhoff.org.uk> | 2018-01-05 09:54:39 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-05 09:54:39 +0000 |
commit | 6e375f45978bf2b9b6820a9c6caadf6f58a08f8b (patch) | |
tree | 02ed83942c3b98d3a59d8760ff962726ec27c8d0 | |
parent | Merge pull request #2745 from matrix-org/rav/assert_params (diff) | |
parent | Better logging when login can't find a 3pid (diff) | |
download | synapse-6e375f45978bf2b9b6820a9c6caadf6f58a08f8b.tar.xz |
Merge pull request #2744 from matrix-org/rav/login_logging
Better logging when login can't find a 3pid
-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 = { |