Projet

Général

Profil

Development #57554

assertionerror backend ldap

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

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
04 octobre 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

File "/usr/lib/python3/dist-packages/django/contrib/auth/middleware.py" in <lambda>
  24.         request.user = SimpleLazyObject(lambda: get_user(request))

File "/usr/lib/python3/dist-packages/django/contrib/auth/middleware.py" in get_user
  12.         request._cached_user = auth.get_user(request)

File "/usr/lib/python3/dist-packages/django/contrib/auth/__init__.py" in get_user
  189.             user = backend.get_user(user_id)

File "/usr/lib/python3/dist-packages/authentic2/backends/ldap_backend.py" in get_user
  873.                 user.init_from_request()

File "/usr/lib/python3/dist-packages/authentic2/backends/ldap_backend.py" in init_from_request
  411.         assert request and request.session is not None

Fichiers

Révisions associées

Révision a8065274 (diff)
Ajouté par Valentin Deniaud il y a plus de 2 ans

ldap: allow skipping user initialization if no request (#57554)

Historique

#1

Mis à jour par Valentin Deniaud il y a plus de 2 ans

Le bug c'est qu'on se prend une 502 quand un utilisateur essaye d'accéder à un chemin qui n'existe pas sous /api/ dans authentic. C'est un bug présent en prod. La version sentry donne plus d'info https://sentry.entrouvert.org/entrouvert/publik/issues/53229/, mais je ne sais quoi en faire quand même.

#2

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

On se retrouve hors du block encadré par StoreRequestMiddleware, donc pas de requête, il faut effectivement virer l'assert et juste ne pas appeler init_from_session si on arrive pas à trouver une requête et une session, je ne vois pas trop d'autre possibilité pour l'instant.

#3

Mis à jour par Valentin Deniaud il y a plus de 2 ans

  • Assigné à mis à Valentin Deniaud
#4

Mis à jour par Valentin Deniaud il y a plus de 2 ans

Benjamin Dauvergne a écrit :

On se retrouve hors du block encadré par StoreRequestMiddleware, donc pas de requête

Dac mais je n'ai quand même pas compris pourquoi erreur avec le chemin /api/blabla et pas /manage/blabla.

#5

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

  • Statut changé de Solution proposée à Solution validée

C'est le log d'une 404 au niveau wsgi handler de Django, donc oui ça doit y arriver aussi sur une 404 dans le manage sauf si il y a une gestion différente des 404 (PS: et non ça fait pareil s'authentifier sur cresson puis aller sur https://cresson.entrouvert.org/manage/coin/).

#6

Mis à jour par Valentin Deniaud il y a plus de 2 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit a8065274d48bcc1563b472cff1c903ad757a697f
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Tue Oct 19 18:04:27 2021 +0200

    ldap: allow skipping user initialization if no request (#57554)
#7

Mis à jour par Frédéric Péters il y a plus de 2 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF