...
| Propriété | Fonction |
|---|---|
| Nom du champ | (non modifiable) |
| Description | apparaît au survol et lors du contrôle des champs requis |
| Type | text, checkbox, radio, date, time, number, select |
| Favorisable | si cette case est cochée, les données saisies dans ce champ seront proposées à l'utilisateur lors de la prochaine saisis |
| Requis | aux étapes concernées, les champs seront obligatoires |
| Lecture seule | verrouille le champ |
| Pré-remplissage | active la fonction de pré-remplissage du champ en fonction de l'utilisateur courant |
| Auto-complétion | active la fonction d'auto-complétion du champ en fonction de la saisie courante dans le champ concerné |
| Nom du service | choix du service utilisé lors du pré-remplissage ou de l'auto-complétion (esup-signature propose default et ldap nativement voir ci-après) |
| Type de donnée | sélection du "sous-service" utilisé lors du pré-remplissage ou de l'auto-complétion |
| Attribut retourné | nom de l'attribut retourné lors du pré-remplissage ou de l'auto-complétion |
| Étapes autorisées | numéro des étapes pour lesquelles les champs sont à remplir (le champ sera verrouillé à toutes les autres étapes) |
Exemple de rendu d'un formulaire :
...
Esup-signature est fourni avec les classes LdapExtValue, RestExtValue et DefaulExtValue.
LdapExtValue
La classe LdapExtValue permet d'accéder aux informations, présentes dans LDAP en fonction de l'utilisateur courant. Pour l'utiliser il faut selectionner ldap au niveau de "Nom du service" puis person ou organizationalUnit au niveau de "Type de données". Enfin il reste à saisir manuellement le nom du champ ldap dans "Attribut retourné".
Ex:
RestExtValue
La classe RestExtValue permet d'obtenir les données de l'utilisateur courant depuis l'appel d'un web service. Dans ce cas vous devez mettre en place un web service type REST accéssible par l'apllicationn esup-signature via une requête de type POST.
Le web service obtiendra l'attribut 'eppn" de l'utilisatuteur courant ainsi que l'attribut "signRequestId" qui correspond à l'ID de la demande en cours.
En retour, le web service doit renvoyer un objet json de type Map<String, Object>, autrement dit une map clés/valeurs contenant les informations mise à disposition concernant l'utilisateur (l'eppn)
Voici en exemple de web service en python utilisant Flask (apt install sudo apt install python3-flask)
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/', methods=['POST'])
def test():
data = request.form.to_dict()
eppn = data.get('eppn', '')
sign_request_id = data.get('signRequestId', '')
response_data = {
'eppn': eppn,
'signRequestId': sign_request_id,
'test': 'SUCCESS'
}
return jsonify(response_data)
if __name__ == '__main__':
app.run(port=8081) |
Coté esup-signature il faut configurer rest-ext-value-url: http://localhost:8081 (dans notre cas) puis au niveau du formulaire utiliser rest au niveau de "Nom du service" puis data au niveau de "Type de données" et enfin à saisir manuellement le nom de la clé voulue dans "Attribut retourné".
DefaultExtValue
La classe DefaultExtValue est utilisable en mettant "default" dans le nom du service et "system" au niveau du type. Elle DefaulExtValue et LdapExtValue. La classe DefaultExtValue est utilisable en mettant "default" dans le nom du service et "system" au niveau du type. Elle propose les attributs (calculés) suivant :
...

