Anomalie #29413
ferméProblème à la validation sans certificat (rôle signataire) - circuit multi-signataire
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
Mis à jour par Emmanuel DILLARD il y a 6 mois
- Statut changé de A qualifier à R&D - A étudier
Mis à jour par Emmanuel DILLARD il y a 6 mois
- Description mis à jour (diff)
- Statut changé de R&D - A étudier à R&D - A planifier
Mis à jour par Emmanuel DILLARD il y a 6 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 6 mois
- Assigné à changé de Emmanuel DILLARD à Jean-Laurent DUZANT
Mis à jour par Nicolas COUTURE il y a 6 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 6 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 6 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 6 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 GIT LAB il y a 6 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 5 mois
- Statut changé de R&D - En cours à R&D - En test
Mis à jour par GIT LAB il y a 5 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 5 mois
- Statut changé de R&D - En test à R&D - Terminé