Projet

Général

Profil

Actions

Anomalie #29413

fermé

Problème à la validation sans certificat (rôle signataire) - circuit multi-signataire

Ajouté par Nicolas COUTURE il y a 5 mois. Mis à jour il y a environ un mois.

Statut:
R&D - Terminé
Priorité:
0-Bloquant
Version cible:
Début:
25/06/2024
Echéance:
16/07/2024

Description

Lors de tests effectués pour le ticket #28951, un problème est apparu
https://labs.maarch.org/devteam/maarch-courrier-dev/-/merge_requests/1#note_64770

Voila le scénario :

  • Enregistrement d'un courrier avec une PJ
  • Envoi dans le parapheur interne vers (au moins) 2 signataires
  • Chez le premier signataire, valider et continuer le circuit de visa en signant électroniquement
  • Chez le 2ème signataire, valider le circuit de visa en décochant la case de signature électronique

=> Problème de signature

Analyse :
Après test pas à pas, il semblerait que le cycle de signature passe par la fonction signDocument (CertificateSignatureController.php) dans MP Api à cause du rôle rgs_2stars qui est envoyé dans le circuit à l'indexation du document côté MP. Dans la mesure où on décoche la case d'apposition d'un certificat, il n'y a pas de certificat envoyé côté MP pour l'étape de signature donc ça plante à l'intérieur de la fonction signDocument (la variable $_SESSION['module'] n'étant pas initialisée car ceci s'effectue à l'étape de hash du certificat)

Un rôle signataire :

N'appose pas de griffe ni de certificat
est considéré comme viseur

si au moins un document possède déjà un certificat,
obligation certificat (case cochée et grisée, non modifiable)
Contournement : modifier le circuit

"Au moins un document possède un certificat électronique" -> survol case à cocher

Si certificat est décoché par l'utilisateur et pas de griffe sur au moins un doc
la poursuite du circuit est bloquée (modale valider et poursuivre...)
Contournement : modifier le circuit

"Au moins un document n'a pas de griffe. En l'absence de certificat, une griffe sur chaque document est requise"

Check en API avec les contrôlés identiques.

Action bloquée si :

  • Un doc avec certificat : certificat requis
  • si un doc n'as pas de griffe

Demandes liées 1 (0 ouverte1 fermée)

Lié à Backlog Courrier - Fonctionnalité #29421: Parapheur : un viseur ne doit pas pouvoir apposer de griffe sur un document certifiéR&D - TerminéNicolas COUTURE26/06/202401/07/2024Actions

Mis à jour par Emmanuel DILLARD il y a 5 mois

  • Statut changé de A qualifier à R&D - A étudier

Mis à jour par Emmanuel DILLARD il y a 5 mois

  • Description mis à jour (diff)
  • Statut changé de R&D - A étudier à R&D - A planifier

Mis à jour par Emmanuel DILLARD il y a 5 mois

  • Echéance mis à 16/07/2024
  • Statut changé de R&D - A planifier à R&D - En cours

Mis à jour par Jean-Laurent DUZANT il y a 5 mois

  • Assigné à changé de Emmanuel DILLARD à Jean-Laurent DUZANT

Mis à jour par Jean-Laurent DUZANT il y a 5 mois

  • Assigné à Jean-Laurent DUZANT supprimé

Mis à jour par Nicolas COUTURE il y a 5 mois

  • Lié à Fonctionnalité #29421: Parapheur : un viseur ne doit pas pouvoir apposer de griffe sur un document certifié ajouté

Mis à jour par Nicolas COUTURE il y a 5 mois

  • Assigné à mis à Nicolas COUTURE

points traités avec le ticket #29421 (car besoin du mécanisme de sauvegarde du statut de signature électronique des pièces) :

  • Désactivation de la case à cocher de signature électronique lorsqu'on a le rôle de signataire et qu'au moins un des documents a eu un certificat électronique
  • Désactivation de l'action si on décoche la case de la signature électronique et qu'au moins un des documents n'a pas de griffe

Mis à jour par Emmanuel DILLARD il y a 5 mois

Si signataire pose une griffe mais décoche certificat :

Signature not applied on document : Internal server error (Message = Call to a member function setSignatureValue() on null)

Mis à jour par Nicolas COUTURE il y a 5 mois

Emmanuel DILLARD a écrit :

Si signataire pose une griffe mais décoche certificat :

Signature not applied on document : Internal server error (Message = Call to a member function setSignatureValue() on null)

Tout a fait, le mode de signature n'est pas modifié lorsqu'on décoche la case de certificat électronique alors qu'il devrait l'être. Je pense qu'on peut restreindre ce ticket à ce correctif là (qui est essentiellement front).
Pour les différents contrôles (blocage de l'action si aucune griffe ni certificat + obligation de certif électronique si signé électroniquement avant), j'ai géré ça dans l'autre ticket

Mis à jour par Nicolas COUTURE il y a 5 mois

  • Assigné à Nicolas COUTURE supprimé

Mis à jour par Jean-Laurent DUZANT il y a 5 mois

  • Assigné à mis à Jean-Laurent DUZANT

Mis à jour par GIT LAB il y a 5 mois

[CREATION] MR feat/29413/main (cible main) par Jean-Laurent DUZANT

https://labs.maarch.org/devteam/maarch-courrier-dev/-/merge_requests/39

Mis à jour par Jean-Laurent DUZANT il y a 4 mois

  • Statut changé de R&D - En cours à R&D - En test

Mis à jour par GIT LAB il y a 4 mois

[CLOTURE] MR feat/29413/main (cible main) par Hamza HRAMCHI

https://labs.maarch.org/devteam/maarch-courrier-dev/-/merge_requests/39

Mis à jour par Hamza HRAMCHI il y a 4 mois

  • Statut changé de R&D - En test à R&D - Terminé
Actions

Formats disponibles : Atom PDF