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.
This commit is contained in:
Tobias Genannt 2021-07-02 07:55:13 +02:00
parent fa94b80a13
commit c0ddb2092c

View File

@ -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: