Projet

Général

Profil

Bug #20372

crash sur /manage/roles/add sur des permissions manquantes sur les OU

Ajouté par Frédéric Péters il y a plus de 6 ans. Mis à jour il y a 4 mois.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
-
Début:
30 novembre 2017
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

Sur une prod :

Internal Server Error: /manage/roles/add/
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 132, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/usr/lib/python2.7/dist-packages/django/contrib/auth/decorators.py", line 22, in _wrapped_view
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/django/views/generic/base.py", line 71, in view
    return self.dispatch(request, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/authentic2/manager/views.py", line 100, in dispatch
    return super(PermissionMixin, self).dispatch(request, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/authentic2/manager/views.py", line 198, in dispatch
    **kwargs)
  File "/usr/lib/python2.7/dist-packages/django/views/generic/base.py", line 89, in dispatch
    return handler(request, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/django/views/generic/edit.py", line 245, in get
    return super(BaseCreateView, self).get(request, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/django/views/generic/edit.py", line 205, in get
    form = self.get_form()
  File "/usr/lib/python2.7/dist-packages/django/views/generic/edit.py", line 74, in get_form
    return form_class(**self.get_form_kwargs())
  File "/usr/lib/python2.7/dist-packages/hobo/agent/authentic2/role_forms.py", line 101, in __init__
    super(RoleForm, self).__init__(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/authentic2/manager/forms.py", line 289, in __init__
    super(HideOUFieldMixin, self).__init__(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/authentic2/manager/forms.py", line 77, in __init__
    assert qs.exists(), 'user has no view permissions on model %s' % qs.model
AssertionError: user has no view permissions on model <class 'authentic2.a2_rbac.models.OrganizationalUnit'>

(pas regardé le détail de comment ça a pu arriver, mais ça ne devrait pas)

Révisions associées

Révision 307da1b1 (diff)
Ajouté par Benjamin Dauvergne il y a plus de 6 ans

manager: log error when select field is empty due to missing permissions (#20372)

I also simplified usage of logging in this module.

Historique

#4

Mis à jour par Benjamin Dauvergne il y a plus de 6 ans

J'ai modifié le code pour remplacer l'assert un peu inutile par un log.error() ça n'avancera pas plus l'utilisateur mais au moins on aura des détails suffisant la prochaine fois.

#5

Mis à jour par Benjamin Dauvergne il y a 4 mois

  • Statut changé de Nouveau à Fermé
  • Planning mis à Non

Code entièrement réécrit dans #37159, le souci n'existe vraisemblablement plus.

Formats disponibles : Atom PDF