# A.11 — Gestion des utilisateurs et acteurs

Chapitre A.11 du Manuel PIGBF

# A.11.11.1 — Vue d'ensemble

## 11.1 Vue d'ensemble

La gestion des utilisateurs est l'une des responsabilités les plus sensibles de l'Administrateur Plateforme. Elle conditionne directement qui peut accéder à quoi dans la PIGBF. Ce module permet de :

- **Créer** de nouveaux comptes utilisateurs et leur attribuer un rôle
- **Modifier** les informations et le rôle d'un utilisateur existant
- **Suspendre ou réactiver** un compte
- **Rattacher** un utilisateur à un acteur (entité organisationnelle) et/ou une ONG
- **Gérer les années scolaires** accessibles à chaque utilisateur
- **Consulter** la liste des enquêteurs terrain ODK

La liste des utilisateurs est accessible via Menu latéral → **Utilisateurs**.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Page liste des utilisateurs : tableau avec colonnes Avatar, Nom, Email, Rôle (badge coloré selon le rôle), Acteur, ONG, Statut (Actif/Suspendu badge), Actions (icônes Voir / Modifier / Suspendre-Réactiver) ; barre de recherche en haut ; bouton "Nouvel utilisateur" en haut à droite ; pagination en bas</callout>`

---

# A.11.11.2 — Les acteurs

## 11.2 Les acteurs

### 11.2.1 Définition

Un **acteur** est l'entité organisationnelle à laquelle un utilisateur est rattaché. Il détermine le contexte institutionnel de l'utilisateur sur la plateforme. Les acteurs principaux du programme PAAF/PIGBF sont :

<table id="bkmrk-acteur-description-i"><thead><tr><th>Acteur</th><th>Description</th></tr></thead><tbody><tr><td>**IT GROUP**</td><td>Équipe technique développant et maintenant la plateforme</td></tr><tr><td>**ONG partenaire**</td><td>Organisation non gouvernementale opérationnelle sur le terrain</td></tr><tr><td>**PROVED**</td><td>Provincial de l'Éducation — entité de supervision provinciale</td></tr><tr><td>**Sous-PROVED**</td><td>Sous-Provincial de l'Éducation — entité de supervision locale</td></tr><tr><td>**PAAF**</td><td>Coordination centrale du programme</td></tr></tbody></table>

ℹ️ **Note :** Le champ **Acteur** dans le formulaire utilisateur est distinct du champ **ONG**. Un utilisateur rattaché à une ONG doit avoir l'acteur « ONG partenaire » **et** un ONG sélectionné dans le champ dédié. Ces deux champs combinés définissent précisément son périmètre d'accès.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Section acteur dans le formulaire utilisateur : liste déroulante "Acteur" avec les options listées ; champ "ONG" qui apparaît conditionnellement lorsque l'acteur "ONG partenaire" est sélectionné, avec liste déroulante des ONG actives</callout>`

---

# A.11.11.3 — Créer un nouvel utilisateur

## 11.3 Créer un nouvel utilisateur

### 11.3.1 Accéder au formulaire de création

Menu latéral → **Utilisateurs → Nouvel utilisateur** (bouton en haut à droite de la liste).

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Page "Créer un utilisateur" : formulaire avec sections bien délimitées — "Informations personnelles" (Nom complet, Email, Mot de passe, Confirmer le mot de passe avec icônes œil pour afficher/masquer), "Accès et rôle" (Rôle, Acteur, ONG — conditionnel, Années scolaires accessibles — liste à cocher), "Options" (Statut actif/inactif, case à cocher "Envoyer les identifiants par email"), "Avatar" (zone upload d'image)</callout>`

### 11.3.2 Renseigner les informations du formulaire

**Section « Informations personnelles »**

1. **Nom complet** — Prénom et nom de l'utilisateur. Ce nom sera affiché dans l'interface et dans les journaux d'activité.
2. **Email** — Adresse email de connexion. Elle doit être unique sur la plateforme. C'est également l'adresse à laquelle seront envoyés les rapports et les notifications.
3. **Mot de passe** — Définissez un mot de passe fort (minimum 8 caractères, combinant lettres, chiffres et caractères spéciaux). Cliquez sur l'icône 👁 pour afficher/masquer le mot de passe en clair.
4. **Confirmer le mot de passe** — Ressaisissez le mot de passe pour validation.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Section "Informations personnelles" du formulaire : champs Nom, Email, Mot de passe (masqué avec icône œil), Confirmer mot de passe ; indicateur de force du mot de passe visible sous le champ</callout>`

**Section « Accès et rôle »**

5. **Rôle** — Sélectionnez le rôle à attribuer. Seuls les rôles que vous êtes autorisé à attribuer sont visibles (un Admin ne peut pas créer de Super Admin).

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Champ déroulant "Rôle" ouvert : liste des 7 rôles disponibles avec une courte description de chaque rôle au survol</callout>`

6. **Acteur** — Sélectionnez l'entité organisationnelle de rattachement parmi les acteurs disponibles.
7. **ONG** — Ce champ apparaît uniquement si l'acteur sélectionné est « ONG partenaire ». Sélectionnez l'ONG dans la liste. Ceci restreint automatiquement le périmètre de données accessible à cet utilisateur à l'ONG concernée.
8. **Années scolaires accessibles** — Cochez les années scolaires auxquelles cet utilisateur aura accès. Un utilisateur sans aucune année cochée ne pourra pas accéder aux données et sera redirigé vers une page d'information.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Section "Années scolaires accessibles" : liste de toutes les années scolaires créées sur la plateforme (ex : 2023-2024, 2024-2025, 2025-2026) avec cases à cocher ; 2025-2026 cochée, les autres non</callout>`

**Section « Options »**

9. **Statut** — Par défaut, le compte est créé actif. Décochez si vous souhaitez créer un compte en attente d'activation.
10. **Envoyer les identifiants par email** — Si cette case est cochée, la plateforme envoie automatiquement un email à l'utilisateur contenant ses identifiants de connexion (email + mot de passe) dès la validation du formulaire.

**Section « Avatar »**

11. Cliquez sur la zone d'upload pour sélectionner une photo de profil (formats acceptés : JPG, PNG, max 4 Mo). L'avatar est optionnel mais recommandé pour faciliter l'identification dans les journaux d'activité.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Section Avatar : zone de drop d'image avec aperçu circulaire de la photo uploadée ; bouton "Supprimer" visible si une image est chargée</callout>`

### 11.3.3 Enregistrer l'utilisateur

1. Vérifiez l'ensemble des informations saisies.
2. Cliquez sur **Enregistrer**.
3. En cas d'erreur de validation (email déjà utilisé, mot de passe trop faible, rôle non sélectionné), les champs concernés sont mis en évidence avec un message d'erreur explicite.
4. En cas de succès, vous êtes redirigé vers la **fiche de l'utilisateur** créé.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Page fiche utilisateur après création : bloc récapitulatif avec avatar, nom, email, rôle, acteur, ONG, statut actif, années scolaires accessibles ; bandeau de succès vert "Utilisateur créé avec succès" en haut de page</callout>`

---

# A.11.11.4 — Modifier un utilisateur existant

## 11.4 Modifier un utilisateur existant

### 11.4.1 Accéder à la modification

1. Dans la liste des utilisateurs, cliquez sur l'icône **Modifier** (crayon) sur la ligne de l'utilisateur concerné.
2. Ou naviguez vers la fiche utilisateur (icône Voir) puis cliquez sur **Modifier**.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Ligne d'un utilisateur dans le tableau avec les 3 icônes d'action visibles : œil (Voir), crayon (Modifier), cadenas (Suspendre)</callout>`

Le formulaire de modification est identique au formulaire de création, prérempli avec les données existantes.

⚠️ **Attention :** La modification du **rôle** d'un utilisateur prend effet immédiatement. Si l'utilisateur est connecté au moment de la modification, ses accès seront mis à jour à sa prochaine action sur la plateforme.

⚠️ **Attention :** Le champ **Mot de passe** est optionnel en modification. Laissez-le vide pour conserver le mot de passe existant. Si vous le renseignez, le nouveau mot de passe remplace immédiatement l'ancien.

---

# A.11.11.5 — Consulter la fiche d'un utilisateur

## 11.5 Consulter la fiche d'un utilisateur

La fiche utilisateur consolide toutes les informations relatives à un compte en un seul écran.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Page fiche utilisateur complète : (1) bloc identité en haut avec avatar, nom complet, email, statut badge (Actif), date de création du compte ; (2) section "Accès" : rôle, acteur, ONG, liste des années scolaires accessibles ; (3) section "Activité récente" : 5 dernières actions enregistrées dans le journal (action, module, date/heure) ; boutons "Modifier" et "Suspendre" en haut à droite</callout>`

---

# A.11.11.6 — Suspendre et réactiver un compte utilisateur

## 11.6 Suspendre et réactiver un compte utilisateur

### 11.6.1 Suspendre un compte

La suspension d'un compte **bloque immédiatement l'accès** à la plateforme pour l'utilisateur concerné, sans supprimer ses données ni son historique d'activité.

1. Dans la liste des utilisateurs ou dans la fiche utilisateur, cliquez sur l'icône **Suspendre** (cadenas).
2. Une fenêtre modale de confirmation s'affiche :

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Modale de suspension : titre "Suspendre le compte de [Nom de l'utilisateur</callout>", message d'avertissement "Cette action bloquera immédiatement l'accès de cet utilisateur à la plateforme. Son historique et ses données sont conservés. Vous pourrez réactiver son compte à tout moment.", boutons "Annuler" et "Suspendre le compte" (rouge)]`

3. Cliquez sur **Suspendre le compte** pour confirmer. Le badge de statut de l'utilisateur passe à **Suspendu** (rouge).

ℹ️ **Note :** Un utilisateur suspendu qui tente de se connecter voit s'afficher une page d'information lui indiquant que son compte est inactif et l'invitant à contacter l'administrateur.

### 11.6.2 Réactiver un compte

1. Repérez l'utilisateur suspendu dans la liste (filtrez sur le statut « Suspendu » si nécessaire).
2. Cliquez sur l'icône **Réactiver** (cadenas ouvert ou icône dédiée).
3. Une fenêtre modale de confirmation s'affiche :

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Modale de réactivation : titre "Réactiver le compte de [Nom</callout>", message "Cet utilisateur retrouvera immédiatement l'accès à la plateforme avec les droits associés à son rôle.", boutons "Annuler" et "Réactiver" (vert)]`

4. Cliquez sur **Réactiver**. Le badge repasse à **Actif** (vert).

---

# A.11.11.7 — Gestion des enquêteurs terrain

## 11.7 Gestion des enquêteurs terrain

### 11.7.1 Présentation

Les enquêteurs terrain sont un type particulier d'utilisateur de la PIGBF. Contrairement aux autres rôles, **ils n'ont aucun accès à l'interface web** : ils opèrent exclusivement via l'application mobile **ODK Collect** sur tablette. Leurs comptes sont des comptes ODK Central gérés depuis la PIGBF.

Menu latéral → **Enquêteurs**.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Page liste des enquêteurs : tableau avec colonnes Nom, Email ODK, ONG de rattachement, Formulaires assignés (liste des formulaires ODK accessibles), Statut ODK (Actif/Inactif), Date de création, Actions (Voir / Modifier) ; bouton "Nouvel enquêteur" en haut à droite</callout>`

### 11.7.2 Consulter la fiche d'un enquêteur

Cliquez sur l'icône **Voir** sur la ligne d'un enquêteur pour accéder à sa fiche détaillée.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Fiche enquêteur : nom et email ODK, ONG de rattachement, liste des formulaires ODK assignés avec leur code, QR code ODK de configuration de la tablette (à scanner lors de l'initialisation d'une nouvelle tablette), dernière synchronisation ODK (date/heure), statistiques de collecte (nombre de soumissions par formulaire)</callout>`

ℹ️ **Note :** Le QR code affiché sur la fiche enquêteur encode les paramètres de connexion ODK Central spécifiques à cet enquêteur. C'est ce QR code qui doit être scanné depuis l'application ODK Collect lors de la configuration initiale d'une tablette, ou lors du remplacement d'une tablette. Ne le partagez pas par voie non sécurisée.

---

# A.11.11.8 — Bonnes pratiques — Gestion des utilisateurs

## 11.8 Bonnes pratiques — Gestion des utilisateurs

**Appliquer le principe du moindre privilège.** Attribuez toujours le rôle le moins étendu qui permette à l'utilisateur d'accomplir ses tâches. Évitez de créer des comptes Admin génériques partagés entre plusieurs personnes.

**Ne jamais supprimer un compte.** La plateforme ne permet pas la suppression définitive d'un compte utilisateur (le bouton destroy n'est pas exposé). Utilisez la suspension. Cela préserve l'intégrité du journal d'activité et permet de retracer les actions passées en cas d'audit.

**Revoir régulièrement les accès actifs.** À chaque changement de personnel dans les équipes terrain ou de coordination, vérifiez et mettez à jour les comptes correspondants (suspension des départs, création des arrivées, mise à jour des rôles en cas de changement de poste).

**Documenter les raisons des suspensions.** Même si la plateforme ne dispose pas d'un champ commentaire sur la suspension, notez en interne la raison et la date de la décision, notamment pour les comptes d'agents terrain.

---