Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SECURITE] Notification url #869

Closed
flobidon opened this issue Dec 28, 2017 · 10 comments · Fixed by #870
Closed

[SECURITE] Notification url #869

flobidon opened this issue Dec 28, 2017 · 10 comments · Fixed by #870
Assignees
Labels
Milestone

Comments

@flobidon
Copy link

flobidon commented Dec 28, 2017

Bonjour,
j'ai pu constater un problème concernant les liens présents dans les notifications.
Si un utilisateur saisie un formulaire, il peut recevoir une notification "[GLPI] Votre demande a été sauvegardée avec succès !" avec un lien vers le formulaire du type "http://servername/glpi/plugins/formcreator/front/form_answer.form.php?id=81"

Hors, si l'utilisateur change l'ID, il peut remonter l'ensemble des réponses aux formulaires, même si les formulaires ne le concernent pas.
Mes tests portent sur un utilisateur lambda du domaine avec un profil Self-service, avec le minimum de droit sur le profil. Une fois qu'il dispose du lien présent dans la notification, il peut revoir l'ensemble des réponses de tous les formulaires.

J'espère avoir été clair. Peut-on améliorer cette sécurité? sinon je devrai enlever tout lien dans les notifications.

Merci

@btry
Copy link
Collaborator

btry commented Dec 28, 2017

Bonjour

Merci, je m'en occupe

@btry btry added the bug label Dec 28, 2017
@btry btry self-assigned this Dec 28, 2017
@btry btry added this to the 2.6.1 milestone Dec 28, 2017
@btry
Copy link
Collaborator

btry commented Dec 28, 2017

En lisant attentivement, je note que vous confondez ticket et réponses

form_answer represente un ensemble de réponses à un formulaire. Par contre, evidemment, cela révèle le contenu des tickets générés avec les réponses. Je cherche un correctif.

@flobidon
Copy link
Author

flobidon commented Dec 28, 2017

effectivement, en me relisant je vois mon erreur.
je corrige.

@btry
Copy link
Collaborator

btry commented Dec 28, 2017

@flobidon : essayez le patch que je viens de faire.

Il doit autoriser le visionnage d'un jeu de réponses uniquement si l'utilsiateur est le demandeur, ou un valideur tel que défini par le formulaire, ou un nembre d'un groupe de valideurs comme défini par le formulaire.

Je n'ai pas encore testé les groupes imbriqués, mais ça me semble un bon début.

@flobidon
Copy link
Author

Je confirme, cela résout le problème.
L'utilisateur ne peut plus remonter dans les réponses formulaires sauf s'ils lui sont affectés.
Beau boulot 👍

@btry
Copy link
Collaborator

btry commented Dec 28, 2017

Avez vous eu l'occasion de tester l'accès par un valideur ou un membre de group valideur ?

@flobidon
Copy link
Author

le valideur ne peut remonter sur le formulaire. Il n'a accès qu'aux formulaire dont il est lui même auteur (je parle bien sur en passant par le lien et en changeant l'ID).
Je trouve cela pas plus mal. Le valideur doit aller sur le formulaire en question pour voir les réponses.

@btry
Copy link
Collaborator

btry commented Dec 28, 2017

Que ce soit en changeant l'ID ou en accédant via un lien, le résultat sera le même. Mais je ne suis pas d'accord avec ce que vous observez. Du moins ce n'est pas ce que j'ai prévu, ni observé dans mes tests.

En gros la condition est la suivante
droit = (je suis demandeur) OU (je suis un éligible comme valideur) OU (je suis membre d'un groupe valideur éligible)

valideur éligible correspond à la liste des valideurs visible ici :
image

@flobidon
Copy link
Author

flobidon commented Dec 29, 2017

autant pour moi, je n'utilise pas ce système de validation, mais plutôt une règle métier. Ceci dit, ça répond à une question que je me posait "pourquoi mes valideurs ne recevaient pas les notifications formcreator Un formulaire est en attente de validation".
Donc j'ai fait le test, et effectivement le valideur, ou membre du groupe valideur, peut voir les réponses des formulaires dont il est concerné.

@btry
Copy link
Collaborator

btry commented Dec 29, 2017

Donc ça fonctionne comme attendu. Merci pour le test.

Les tickets peuvent être soumis à validation, c'est inclus dans GLPI. Formcreator fournir une validation du formulaire qui s'effectue avant la création des cibles (tickets ou changements à ce jour).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants