Module: check_mk
Branch: master
Commit: 1c6f164c249de7d2e7e9d2e10c6a581f04acbff4
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=1c6f164c249de7…
Author: Sven Panne <sp(a)mathias-kettner.de>
Date: Fri Feb 16 14:47:35 2018 +0100
5828 FIX Handle case-insensitive equality correctly in Livestatus.
Equality-based Livestatus filters did not handle case-insensitivity
correctly for non-ASCII characters. This has been fixed.
The affected operators are =~ and !=~ for string-valued columns plus > and
<= for list-valued columns.
Note that regular expressions already handle case-(in)sensitivity correctly
since werk 5672 ("Use RE2 regular expression engine for Livestatus
queries").
Change-Id: I936fd5bdfe1b4a48354919f9705cbeabbebcbe09
---
.werks/5828 | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/.werks/5828 b/.werks/5828
new file mode 100644
index 0000000..24829c5
--- /dev/null
+++ b/.werks/5828
@@ -0,0 +1,18 @@
+Title: Handle case-insensitive equality correctly in Livestatus.
+Level: 1
+Component: livestatus
+Compatible: compat
+Edition: cre
+Version: 1.5.0i3
+Date: 1518788550
+Class: fix
+
+Equality-based Livestatus filters did not handle case-insensitivity
+correctly for non-ASCII characters. This has been fixed.
+
+The affected operators are =~ and !=~ for string-valued columns plus > and
+<= for list-valued columns.
+
+Note that regular expressions already handle case-(in)sensitivity correctly
+since werk 5672 ("Use RE2 regular expression engine for Livestatus
+queries").
Module: check_mk
Branch: master
Commit: 6dd5a7b87e36c0b3e58cc357c5325cdfe16b131f
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=6dd5a7b87e36c0…
Author: Andreas Umbreit <au(a)mathias-kettner.de>
Date: Thu Feb 15 16:03:41 2018 +0100
5273 FIX Fix display of CustomGraphs for metrics without current performance data
The graphing system was unable to display metrics within a custom graph if the corresponding performance-data is currently not available. This would for example be the case if a check isin a temporary "Unknown" state.
The rendering now correctly relies on the corresponding historical metric data instead of discarding the metric completely.
Change-Id: I245a435350d87ced7adaea6f3e9c558258817f3d
---
.werks/5273 | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/.werks/5273 b/.werks/5273
new file mode 100644
index 0000000..ad99ec6
--- /dev/null
+++ b/.werks/5273
@@ -0,0 +1,12 @@
+Title: Fix display of CustomGraphs for metrics without current performance data
+Level: 1
+Component: metrics
+Compatible: compat
+Edition: cee
+Version: 1.5.0i3
+Date: 1518706513
+Class: fix
+
+The graphing system was unable to display metrics within a custom graph if the corresponding performance-data is currently not available. This would for example be the case if a check isin a temporary "Unknown" state.
+
+The rendering now correctly relies on the corresponding historical metric data instead of discarding the metric completely.
Module: check_mk
Branch: master
Commit: e29f97ae72ffc7a2a43956aed0ed30c410be24d5
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=e29f97ae72ffc7…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Fri Feb 16 09:26:15 2018 +0100
5734 LDAP: It's now possible to create user accounts only on first login
The LDAP connections can now be configured to create user accounts only on
demand which means the accounts are created during the first login of the
user.
This feature can be used if you need to allow a large base of users to access
Check_MK, but only want to have the accounts of users created that really work
with it.
Please note that you will only be able to configure the users after their
first login. For example the roles / groups of a user can only be configured
after account creation.
It can be enabled using the option <i>Create users only on login</i> in
the <i>Users</i> options of your LDAP connection.
Change-Id: I9cdc7303a59efa5db9998534fd4d75ff36b9248e
---
.werks/5734 | 23 +++++++++++++++++++++++
web/htdocs/wato.py | 8 +++++++-
web/plugins/userdb/ldap.py | 11 +++++++++++
3 files changed, 41 insertions(+), 1 deletion(-)
diff --git a/.werks/5734 b/.werks/5734
new file mode 100644
index 0000000..ed67179
--- /dev/null
+++ b/.werks/5734
@@ -0,0 +1,23 @@
+Title: LDAP: It's now possible to create user accounts only on first login
+Level: 1
+Component: wato
+Compatible: compat
+Edition: cre
+Version: 1.5.0i3
+Date: 1518769402
+Class: feature
+
+The LDAP connections can now be configured to create user accounts only on
+demand which means the accounts are created during the first login of the
+user.
+
+This feature can be used if you need to allow a large base of users to access
+Check_MK, but only want to have the accounts of users created that really work
+with it.
+
+Please note that you will only be able to configure the users after their
+first login. For example the roles / groups of a user can only be configured
+after account creation.
+
+It can be enabled using the option <i>Create users only on login</i> in
+the <i>Users</i> options of your LDAP connection.
diff --git a/web/htdocs/wato.py b/web/htdocs/wato.py
index 433ff5d..ee98de1 100644
--- a/web/htdocs/wato.py
+++ b/web/htdocs/wato.py
@@ -6728,6 +6728,12 @@ class ModeEditLDAPConnection(LDAPMode):
),
forth = lambda x: "keep" if (x == "skip") else x
)),
+ ("create_only_on_login", FixedValue(
+ title = _("Create users only on login"),
+ value = True,
+ totext = _("Instead of creating the user accounts during the regular sync, create "
+ "the user on the first login."),
+ )),
]
group_elements = [
@@ -6813,7 +6819,7 @@ class ModeEditLDAPConnection(LDAPMode):
optional_keys = [
'port', 'use_ssl', 'bind', 'page_size', 'response_timeout', 'failover_servers',
'user_filter', 'user_filter_group', 'user_id', 'lower_user_ids', 'connect_timeout', 'version',
- 'group_filter', 'group_member', 'suffix',
+ 'group_filter', 'group_member', 'suffix', 'create_only_on_login',
],
validate = self._validate_ldap_connection,
),
diff --git a/web/plugins/userdb/ldap.py b/web/plugins/userdb/ldap.py
index c0d4238..b1d616b 100644
--- a/web/plugins/userdb/ldap.py
+++ b/web/plugins/userdb/ldap.py
@@ -42,6 +42,7 @@
# | Some basic declarations and module loading etc. |
# '----------------------------------------------------------------------'
+import os
import time
import copy
@@ -393,6 +394,10 @@ class LDAPUserConnector(UserConnector):
return self._config['user_dn'] != ''
+ def create_users_only_on_login(self):
+ return self._config.get('create_only_on_login', False)
+
+
def user_id_attr(self):
return self._config.get('user_id', self.ldap_attr('user_id'))
@@ -1038,6 +1043,12 @@ class LDAPUserConnector(UserConnector):
mode_create, user = load_user(user_id)
user_connection_id = cleanup_connection_id(user.get('connector'))
+ if self.create_users_only_on_login() and mode_create:
+ self._logger.debug(' SKIP SYNC "%s" (Only create user of "%s" connector on login)' %
+ (user_id, user_connection_id))
+ continue
+
+
if only_username and user_id != only_username:
continue # Only one user should be synced, skip others.