diff options
author | Erik Johnston <erik@matrix.org> | 2015-10-23 11:11:56 +0100 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2015-10-23 11:11:56 +0100 |
commit | 259d10f0e4947f58e70998971b5d862a5ebe17d4 (patch) | |
tree | 89ecd1b19ed7668d502418e7fbf1310ed68afaba /synapse/rest/client/v1/login.py | |
parent | Merge pull request #325 from matrix-org/markjh/filter_dicts (diff) | |
parent | Fix receipts for room initial sync (diff) | |
download | synapse-259d10f0e4947f58e70998971b5d862a5ebe17d4.tar.xz |
Merge branch 'release-v0.10.1' of github.com:matrix-org/synapse into develop
Diffstat (limited to 'synapse/rest/client/v1/login.py')
-rw-r--r-- | synapse/rest/client/v1/login.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/synapse/rest/client/v1/login.py b/synapse/rest/client/v1/login.py index e71cf7e43e..4ea06c1434 100644 --- a/synapse/rest/client/v1/login.py +++ b/synapse/rest/client/v1/login.py @@ -43,6 +43,7 @@ class LoginRestServlet(ClientV1RestServlet): def __init__(self, hs): super(LoginRestServlet, self).__init__(hs) self.idp_redirect_url = hs.config.saml2_idp_redirect_url + self.password_enabled = hs.config.password_enabled self.saml2_enabled = hs.config.saml2_enabled self.cas_enabled = hs.config.cas_enabled self.cas_server_url = hs.config.cas_server_url @@ -50,11 +51,13 @@ class LoginRestServlet(ClientV1RestServlet): self.servername = hs.config.server_name def on_GET(self, request): - flows = [{"type": LoginRestServlet.PASS_TYPE}] + flows = [] if self.saml2_enabled: flows.append({"type": LoginRestServlet.SAML2_TYPE}) if self.cas_enabled: flows.append({"type": LoginRestServlet.CAS_TYPE}) + if self.password_enabled: + flows.append({"type": LoginRestServlet.PASS_TYPE}) return (200, {"flows": flows}) def on_OPTIONS(self, request): @@ -65,6 +68,9 @@ class LoginRestServlet(ClientV1RestServlet): login_submission = _parse_json(request) try: if login_submission["type"] == LoginRestServlet.PASS_TYPE: + if not self.password_enabled: + raise SynapseError(400, "Password login has been disabled.") + result = yield self.do_password_login(login_submission) defer.returnValue(result) elif self.saml2_enabled and (login_submission["type"] == |