Module: check_mk
Branch: master
Commit: d2aa85f64a6888e462afc6511c5c6e18d6a13f72
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=d2aa85f64a6888…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Thu Oct 25 11:39:21 2018 +0200
Need to accept md5_crypt hashes for compatibility
Change-Id: Ic83d1a9b1de8b1a9877f03221805210d5d270440
---
cmk/gui/plugins/userdb/htpasswd.py | 1 +
tests/unit/cmk/gui/test_userdb_htpasswd_connector.py | 2 ++
2 files changed, 3 insertions(+)
diff --git a/cmk/gui/plugins/userdb/htpasswd.py b/cmk/gui/plugins/userdb/htpasswd.py
index 4f2d46d..e9ab85c 100644
--- a/cmk/gui/plugins/userdb/htpasswd.py
+++ b/cmk/gui/plugins/userdb/htpasswd.py
@@ -41,6 +41,7 @@ from . import UserConnector, user_connector_registry
crypt_context = CryptContext(schemes=[
"sha256_crypt",
# Kept for compatibility with Check_MK < 1.6
+ "md5_crypt",
"apr_md5_crypt",
"des_crypt",
])
diff --git a/tests/unit/cmk/gui/test_userdb_htpasswd_connector.py
b/tests/unit/cmk/gui/test_userdb_htpasswd_connector.py
index c43c907..8a494a1 100644
--- a/tests/unit/cmk/gui/test_userdb_htpasswd_connector.py
+++ b/tests/unit/cmk/gui/test_userdb_htpasswd_connector.py
@@ -14,6 +14,7 @@ def htpasswd_file(tmpdir):
# Pre 1.6 hashing formats (see cmk.gui.plugins.userdb.htpasswd for more details)
u"bärnd:$apr1$/FU.SwEZ$Ye0XG1Huf2j7Jws7KD.h2/\n"
u"cmkadmin:NEr3kqi287FQc\n"
+ u"harry:$1$478020$ldQUQ3RIwRYk5wjKfsWPD.\n"
# A disabled user
u"locked:!NEr3kqi287FQc\n"
# A >= 1.6 sha256 hashed password
@@ -62,5 +63,6 @@ def test_user_connector_verify_password(htpasswd_file, monkeypatch):
assert c.check_credentials(u"cmkadmin", u"cmk") ==
u"cmkadmin"
assert c.check_credentials(u"bärnd", u"cmk") ==
u"bärnd"
assert c.check_credentials(u"sha256user", u"cmk") ==
u"sha256user"
+ assert c.check_credentials(u"harry", u"cmk") ==
u"harry"
assert c.check_credentials(u"dingeling", u"aaa") is None
assert c.check_credentials(u"locked", u"locked") == False