AUTH_LDAP_GROUP_TYPE = PosixGroupType() causes AssertionError #2495

Closed
opened 2025-12-29 18:19:23 +01:00 by adam · 1 comment
Owner

Originally created by @frank-f on GitHub (Apr 4, 2019).

Environment

  • Python version: 3.6.6
  • NetBox version: 2.5.9 (Github HEAD)

Steps to Reproduce

I have a new, fresh NetBox installation with just the admin account added to the system and I am trying to use LDAP authentication. Contrary to the sample configuration my layout requires me to use "AUTH_LDAP_GROUP_TYPE = PosixGroupType()".

See also 6f5c35c278 (commitcomment-33030014)

After removing that line and logging into NetBox with a valid LDAP account once, further login attempts with an unpatched middleware.py work perfectly fine.

Expected Behavior

Users can log ing and appropriate flags will be assigned according to their group membership.

Observed Behavior

As soon as I set this, I was getting an AssertionError upon every login attempt.

Traceback:

File "/usr/local/lib64/python3.6/site-packages/django/core/handlers/exception.py" in inner
 34.             response = get_response(request)

File "/usr/local/lib64/python3.6/site-packages/django/core/handlers/base.py" in _get_response
 115.                 response = self.process_exception_by_middleware(e, request)

File "/usr/local/lib64/python3.6/site-packages/django/core/handlers/base.py" in _get_response
 113.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "/usr/local/lib64/python3.6/site-packages/django/views/generic/base.py" in view
 71.             return self.dispatch(request, *args, **kwargs)

File "/usr/local/lib64/python3.6/site-packages/django/utils/decorators.py" in _wrapper
 45.         return bound_method(*args, **kwargs)

File "/usr/local/lib64/python3.6/site-packages/django/views/decorators/debug.py" in sensitive_post_parameters_wrapper
 76.             return view(request, *args, **kwargs)

File "/opt/repo-netbox/netbox/users/views.py" in dispatch
 29.         return super().dispatch(*args, **kwargs)

File "/usr/local/lib64/python3.6/site-packages/django/views/generic/base.py" in dispatch
 97.         return handler(request, *args, **kwargs)

File "/opt/repo-netbox/netbox/users/views.py" in post
 48.             auth_login(request, form.get_user())

File "/usr/local/lib64/python3.6/site-packages/django/contrib/auth/__init__.py" in login
 108.         request.session.cycle_key()

File "/usr/local/lib64/python3.6/site-packages/django/contrib/sessions/backends/base.py" in cycle_key
 300.             self.delete(key)

File "/usr/local/lib64/python3.6/site-packages/django/contrib/sessions/backends/db.py" in delete
 103.             self.model.objects.get(session_key=session_key).delete()

File "/usr/local/lib64/python3.6/site-packages/django/db/models/base.py" in delete
 919.         return collector.delete()

File "/usr/local/lib64/python3.6/site-packages/django/db/models/deletion.py" in delete
 317.                             sender=model, instance=obj, using=self.using

File "/usr/local/lib64/python3.6/site-packages/django/dispatch/dispatcher.py" in send
 175.             for receiver in self._live_receivers(sender)

File "/usr/local/lib64/python3.6/site-packages/django/dispatch/dispatcher.py" in <listcomp>
 175.             for receiver in self._live_receivers(sender)

File "/usr/local/lib64/python3.6/site-packages/django/utils/functional.py" in _curried
 14.         return _curried_func(*args, *moreargs, **{**kwargs, **morekwargs})

File "/opt/repo-netbox/netbox/extras/middleware.py" in _record_object_deleted
 34.     assert request.user.is_authenticated

Exception Type: AssertionError at /login/

Request information:
USER: AnonymousUser

GET: No GET data
Originally created by @frank-f on GitHub (Apr 4, 2019). ### Environment * Python version: 3.6.6 * NetBox version: 2.5.9 (Github HEAD) ### Steps to Reproduce I have a new, fresh NetBox installation with just the admin account added to the system and I am trying to use LDAP authentication. Contrary to the sample configuration my layout requires me to use "AUTH_LDAP_GROUP_TYPE = PosixGroupType()". See also https://github.com/digitalocean/netbox/commit/6f5c35c2781a1dab157313b1ef87de2ae8de92be#commitcomment-33030014 After removing that line and logging into NetBox with a valid LDAP account once, further login attempts with an unpatched middleware.py work perfectly fine. ### Expected Behavior Users can log ing and appropriate flags will be assigned according to their group membership. ### Observed Behavior As soon as I set this, I was getting an AssertionError upon every login attempt. ``` Traceback: File "/usr/local/lib64/python3.6/site-packages/django/core/handlers/exception.py" in inner 34. response = get_response(request) File "/usr/local/lib64/python3.6/site-packages/django/core/handlers/base.py" in _get_response 115. response = self.process_exception_by_middleware(e, request) File "/usr/local/lib64/python3.6/site-packages/django/core/handlers/base.py" in _get_response 113. response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/usr/local/lib64/python3.6/site-packages/django/views/generic/base.py" in view 71. return self.dispatch(request, *args, **kwargs) File "/usr/local/lib64/python3.6/site-packages/django/utils/decorators.py" in _wrapper 45. return bound_method(*args, **kwargs) File "/usr/local/lib64/python3.6/site-packages/django/views/decorators/debug.py" in sensitive_post_parameters_wrapper 76. return view(request, *args, **kwargs) File "/opt/repo-netbox/netbox/users/views.py" in dispatch 29. return super().dispatch(*args, **kwargs) File "/usr/local/lib64/python3.6/site-packages/django/views/generic/base.py" in dispatch 97. return handler(request, *args, **kwargs) File "/opt/repo-netbox/netbox/users/views.py" in post 48. auth_login(request, form.get_user()) File "/usr/local/lib64/python3.6/site-packages/django/contrib/auth/__init__.py" in login 108. request.session.cycle_key() File "/usr/local/lib64/python3.6/site-packages/django/contrib/sessions/backends/base.py" in cycle_key 300. self.delete(key) File "/usr/local/lib64/python3.6/site-packages/django/contrib/sessions/backends/db.py" in delete 103. self.model.objects.get(session_key=session_key).delete() File "/usr/local/lib64/python3.6/site-packages/django/db/models/base.py" in delete 919. return collector.delete() File "/usr/local/lib64/python3.6/site-packages/django/db/models/deletion.py" in delete 317. sender=model, instance=obj, using=self.using File "/usr/local/lib64/python3.6/site-packages/django/dispatch/dispatcher.py" in send 175. for receiver in self._live_receivers(sender) File "/usr/local/lib64/python3.6/site-packages/django/dispatch/dispatcher.py" in <listcomp> 175. for receiver in self._live_receivers(sender) File "/usr/local/lib64/python3.6/site-packages/django/utils/functional.py" in _curried 14. return _curried_func(*args, *moreargs, **{**kwargs, **morekwargs}) File "/opt/repo-netbox/netbox/extras/middleware.py" in _record_object_deleted 34. assert request.user.is_authenticated Exception Type: AssertionError at /login/ Request information: USER: AnonymousUser GET: No GET data ```
adam closed this issue 2025-12-29 18:19:23 +01:00
Author
Owner

@jeremystretch commented on GitHub (Apr 29, 2019):

Thank you for your interest in NetBox. GitHub issues are intended for reporting reproducible bugs and requesting features, and must be submitted using one of the templates provided here. For general discussion, questions, or assistance with installation issues, please post to our mailing list instead.

@jeremystretch commented on GitHub (Apr 29, 2019): Thank you for your interest in NetBox. GitHub issues are intended for reporting reproducible bugs and requesting features, and must be submitted using one of the templates provided [here](https://github.com/digitalocean/netbox/issues/new/choose). For general discussion, questions, or assistance with installation issues, please post to our [mailing list](https://groups.google.com/forum/#!forum/netbox-discuss) instead.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#2495