Projet

Général

Profil

Development #46770

vérifier le type du paramètre category_id reçu

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

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
18 septembre 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

PATH_INFO       '/backoffice/management/listing'
QUERY_STRING    'offset=0&limit=20&order_by=1&status=1&start=&end=&category_id=hello&q=2'

Ça échouera uniquement au niveau de la db quand postgresql fera un cast de la valeur en entier, et dire

Exception:
  type = '<class 'psycopg2.DataError'>', value = 'ERREUR:  syntaxe en entrée invalide pour l'entier : « hello »
...

  File "/usr/lib/python3/dist-packages/wcs/backoffice/management.py", line 871, in listing
   869         criterias = self.get_global_listing_criterias()
   870         criterias.append(Null('anonymised'))  # exclude anonymised forms
>  871         total_count = sql.AnyFormData.count(criterias)
   872         if offset > total_count:
   873             get_request().form['offset'] = '0'

La vérification doit sans doute se faire uniquement en mode postgresql parce que c'était légitime il y a très longtemps d'avoir des catégories avec des lettres dans l'id.


Fichiers

Révisions associées

Révision 784670ed (diff)
Ajouté par Frédéric Péters il y a plus de 3 ans

misc: check category_id from query string is an integer (#46770)

Historique

#1

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

  • Assigné à mis à Frédéric Péters
#2

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

La vérification doit sans doute se faire uniquement en mode postgresql parce que c'était légitime il y a très longtemps d'avoir des catégories avec des lettres dans l'id.

Sauf que le paramètre category_id concerne uniquement la vue globale qui n'est de toute façon dispo qu'en postgresql.

#3

Mis à jour par Lauréline Guérin il y a plus de 3 ans

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

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

  • Statut changé de Solution validée à Résolu (à déployer)
commit 784670ed106effca25e24dec5731826186976096
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Tue Sep 22 15:06:57 2020 +0200

    misc: check category_id from query string is an integer (#46770)
#5

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

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

Formats disponibles : Atom PDF