Преглед изворни кода

Fixed bug for users authenticated with API token

This prevents a crash when the current user has authenticated himself
with an API token. In this case the user will not have the permissions
given to his LDAP groups.
Tobias Genannt пре 4 година
родитељ
комит
4abfa6231c
1 измењених фајлова са 3 додато и 1 уклоњено
  1. 3 1
      netbox/netbox/authentication.py

+ 3 - 1
netbox/netbox/authentication.py

@@ -147,7 +147,9 @@ try:
     class NBLDAPBackend(ObjectPermissionMixin, LDAPBackend_):
         def get_permission_filter(self, user_obj):
             permission_filter = super().get_permission_filter(user_obj)
-            if self.settings.FIND_GROUP_PERMS:
+            if (self.settings.FIND_GROUP_PERMS and
+                    hasattr(user_obj, "ldap_user") and
+                    hasattr(user_obj.ldap_user, "group_names")):
                 permission_filter = permission_filter | Q(groups__name__in=user_obj.ldap_user.group_names)
             return permission_filter
 except ModuleNotFoundError: