La macro identity-picker
- La macro identity-picker
- Présentation
- Intégration de la macro Identity-picker
- Création des rôles pour la gestion des autorisations
- Configuration de l’API de localisation pour l’attribut “commune de naissance”
- Utiliser l’intégration de Identity-Picker dans Forms
Présentation
L’objectif de la macro “identity-picker” est de proposer un bouton ouvrant une fenêtre permettant de rechercher un usager afin de le sélectionner. Le CUID (ou customer_id) (l’identifiant de l’usager) sera retourné à la fermeture de la fenêtre.
Il est nécessaire de disposer d’un contrat de service valide pour pouvoir utiliser les services de cette macro (la demande de contrat de service s’effectue via le site “Fastdeploy”).
La recherche de l’usager est proposée via l’email de l’usager (email de contact ou login), ou en saisissant le nom, prénom et date de naissance de l’usager.
Les identités trouvées peuvent correspondre “strictement” aux termes recherchés, ou à des identités dont les données correspondent approximativement. Les valeurs des attributs approximés apparaissent alors sur fond jaune. Les résultats sont triés par pourcentage de correspondance aux termes recherchés et de qualité.
Une fois l’identité choisie, une page de détail affiche l’ensemble des données de l’usager :
- la liste de ses attributs (autorisés en lecture par le contrat de service) avec leur niveau de certification ,
- un bloc indique si l’identité dispose d’un compte MonParis
- un bloc indique si l’identités correspond aux exigences minimum du contrat de service utilisé (“couverture”)
Il est également possible de :
- consulter l’historique des modifications de l’identité
- modifier l’identité (dans le cadre des droits donnés par le contrat de service utilisé)
- créer une identité (dans le cadre des droits donnés par le contrat de service utilisé)
- créer une demande de validation de l’email: un processus de certification du mail sera alors déclenché par le site “MonParis”.
- créer une demande de création de compte MonParis
L’ensemble de ces fonctionnalités est activable par configuration de la macro et une série de droits RBAC est disponible afin d’autoriser la liste d’ utilisateurs BO concernés.
Le bouton “Sélectionner” permet enfin de sélectionner l’identitée souhaitée, il est alors possible de ramener une liste d’informations complémentaires afin d’alimenter des champs de formulaire dans la page initiale contenant le bouton.
Intégration de la macro Identity-picker
La macro est proposée via le plugin-identitypicker.
Pour intégrer la macro, il faut ajouter la dépendance dans le Pom du site du plugin identitypicker, renseigner les autorisations nécessaires (client API manager, code client pour le contrat de service, etc…) et appeler la macro dans un template.
Il est nécessaire de configurer les accès aux API du RIC via les propriétés suivantes:
identitypicker.default.client.code=your_client_code_here
identitypicker.identitystore.ApiEndPointUrl=your apim url
identitypicker.identitystore.AccessManagerEndPointUrl=your am url
identitypicker.identitystore.AccessManagerCredentials=your authorisation token
Une documentation technique détaillée correspondant aux différents paramètres de la macro est fournie dans la description du plugin identitypicker , avec un exemple, à l’adresse suivante : https://github.com/lutece-secteur-public/gru-plugin-identitypicker
Création des rôles pour la gestion des autorisations
Pour pouvoir utiliser les fonctionnalités de l’identity-picker, il est nécessaire de créer des rôles et les affecter aux utilisateurs.
Dans le menu de création des rôles, cliquer sur le bouton “créer un nouveau rôle”, et sélectionner ensuite dans la liste des contrôles l’élément “Service de recherche d’identité (Identity-Picker)”. Sélectionner ensuite les permissions souhaitées pour le rôle :
- Création de tâche
- Création d’identité
- Recherche d’identité
- Modification d’identité
- Consultation d’identité
Le rôle créé sera ensuite sélectionnable dans la liste des rôles à affecter à un utilisateur.
Configuration de l’API de localisation pour l’attribut “commune de naissance”
Pour utiliser les fonctionnalités de création et de modification d’identité il est nécessaire de configurer le fichier geocodesclient.properties
pour paramétrer l’appel à l’API “geocode”.
Ce fichier est nécessaire pour avoir accès à la recherche de pays et communes dans les modifications et création d’identité. Exemple pour un environnement de DEV :
geocodes.identitystore.ApiEndPointUrl=https://g73-dv-i1-tom02.cmpweb.paris.mdp/mdr/rest/geocodes/api
geocodes.identitystore.accessManagerEndPointUrl=
geocodes.identitystore.accessManagerCredentials=
geocodes.override.default.date.pattern=yyyy-MM-dd
Utiliser l’intégration de Identity-Picker dans Forms
L’identity-picker est également disponible sous la forme d’un type de question “IdentityPicker” dans forms.
Pour pouvoir configurer ce type de question, il faut ajouter la dépendance “module-forms-identity picker” dans son POM de site. Il faut également configurer les propriétés de l’idenityPicker comme indiqué dans les paragraphes précédents.
Cela ajoutera un nouveau type de question identitypicker pour un formulaire. Cette question propose les options suivantes :
- Attributs : sélectionner les attributs de l’identité que vous voulez voir apparaître dans le formulaire et qui seront alimentés via identitypicker
- Créer identité : permet d’activer la fonctionnalité de création d’identité (vérifier également que les RBAC soient bien paramétrés pour permettre la création)
- Modifier identité : permet d’activer la fonctionnalité de modification d’une identité (vérifier également que les RBAC soient bien paramétrés pour permettre la modification)
- Stockage des données : si coché, les données des attributs sélectionnés sont stockées dans les réponses du formulaire. Sinon, seul le cuid est stocké, et c’est la macro qui permettra d’alimenter les attributs automatiquement en requêtant sur le CUID lors de la visualisation des réponses.
Cette question n’est accessible que pour les formulaires BackOffice.