MTES-MCT / monitorfish

🎣 Improve control and monitoring of fishing vessels activities.
https://beta.gouv.fr/startups/monitorfish.html
GNU Affero General Public License v3.0
33 stars 7 forks source link

Cerbère - Beaucoups d'appels APIs authentifiés sont en erreurs #3535

Open louptheron opened 1 month ago

louptheron commented 1 month ago

Sur Sentry, l'erreur "Nous n'avons pas pu récupérer la liste des types de préavis." apparait 1.2k fois.

Le call API en cron /prior_notifications/to_verify a lieu toutes les 30s (avec 3 retry), ça fait donc 360 call APIs par heure en erreurs 401.

Cause

Cette erreur vient d'une erreur backend lors de la validation du JWT :

- Authentication failure during JWT verification: An error occurred while attempting to decode the Jwt: Jwt expired at 2024-08-13T10:10:51Z.

Il semblerait qu'il n'y ait pas de refresh token pour ce cas là, et donc l'API est bloquée.

En PROD, l'appel vers /token (avec le refresh token) est bien fait par le frontend avant expiration du token actuel, mais seulement lorsque l'utilisateur est actif.

To Do

Creuser la raison du non-refresh du token OIDC lorsque l'utilisateur est inactif. Pistes :

louptheron commented 2 weeks ago

Il y a toujours des erreurs 401 quand un utilsateur laisse trop longtemps sa session Cerbère ouverte sans utiliser MonitorFish