]> Frank Brehm's Git Trees - pixelpark/admin-tools.git/commitdiff
Better handling of non-admin DB users in check-dnsui-users
authorFrank Brehm <frank.brehm@pixelpark.com>
Mon, 20 Jul 2020 13:16:19 +0000 (15:16 +0200)
committerFrank Brehm <frank.brehm@pixelpark.com>
Mon, 20 Jul 2020 13:16:19 +0000 (15:16 +0200)
pp_lib/dnsui_users.py

index 75103e104fa6b7d279716827b3330066ea0cc44f..2f72638d09b96df0b7e4bb5a788cba23e121d6be 100644 (file)
@@ -26,7 +26,7 @@ from .common import pp
 
 from .ldap_app import PpLdapAppError, PpLdapApplication
 
-__version__ = '0.4.4'
+__version__ = '0.4.5'
 LOG = logging.getLogger(__name__)
 
 
@@ -451,12 +451,13 @@ class DnsuiUsersApp(PpLdapApplication):
 
             query_filter = (
                 '(&(objectclass=posixAccount)(objectclass=shadowAccount)'
-                '(uid={}))').format(uid)
-            if self.verbose > 2:
+                '(inetuserstatus=active)(objectclass=pppixelaccount)'
+                '(!(ou=*Extern))(uid={}))').format(uid)
+            if self.verbose > 1:
                 LOG.debug("Query filter: {!r}".format(query_filter))
 
             entries = self.ldap_search_subtree(person, query_filter)
-            if self.verbose > 2:
+            if self.verbose > 1:
                 LOG.debug("Found {} LDAP entries.".format(len(entries)))
             if entries:
 
@@ -466,6 +467,9 @@ class DnsuiUsersApp(PpLdapApplication):
                 if db_user['active'] != 1:
                     change_data['active'] = 1
 
+                if db_user['admin'] != 0:
+                    change_data['admin'] = 0
+
                 sn = entry['sn'][0].strip()
                 fn = None
                 if entry['givenName'] and entry['givenName'][0]: