Qui peut voir et modifier quoi
C'est la question qui nous est le plus souvent posée, il est donc utile d'y répondre d'emblée. Le modèle d'accès d'Aptli est délibérément simple et part d'un principe par défaut :
Le contrôle s’effectue à travers deux niveaux indépendants. Ils s’empilent : l’accès final d’une personne à n’importe quel enregistrement correspond à ce que les deux niveaux autorisent.
START: everyone can SEE everything
│
▼
┌──────────────────────────────────────────────┐
│ LAYER 1 — ADMIN RIGHTS │
│ "What may this person CHANGE?" │
│ Granted per area, per action. │
│ No right → can view, but not create/edit/delete
└──────────────────────────────────────────────┘
│
▼
┌──────────────────────────────────────────────┐
│ LAYER 2 — ROLE RESTRICTIONS │
│ "What may this person's role even SEE?" │
│ Hides matching records from the role — │
│ everywhere those records would appear. │
└──────────────────────────────────────────────┘
│
▼
RESULT: what this person can see and do
Couche 1 — Droits d'administration (ce que vous pouvez modifier)
Chaque personne dispose d'un ensemble de droits d'administration. Chaque droit correspond à un commutateur unique pour une action dans un domaine donné — par exemple jobsUpdate, sitesDelete, resourcesCreate. Si vous disposez de ce droit, vous pouvez effectuer cette action ; si vous ne le disposez pas, vous ne le pouvez pas.
Ce schéma est cohérent dans l'ensemble du système : la plupart des domaines disposent d'un droit de création, d'un droit de mise à jour et d'un droit de suppression.
Jobs → jobsCreate · jobsUpdate · jobsDelete
Sites → sitesCreate · sitesUpdate · sitesDelete
Resources → resourcesCreate · resourcesUpdate · resourcesDelete
Reports → reportsCreate · reportsUpdate · reportsDelete
... and so on for every area
Sans aucun droit, une personne est en fait en mode lecture seule : elle peut ouvrir et consulter des enregistrements dans toute l'application, mais les commandes de création/modification/suppression ne lui sont pas accessibles. Vous attribuez des droits pour élargir l'éventail des actions autorisées à chaque personne.
Quelques droits ne concernent pas un seul domaine — ils débloquent une fonctionnalité, telle que Afficher les éléments supprimés (viewDeleted), Faciliter les enlèvements ou Affichage d'audit. Ceux-ci fonctionnent de la même manière : détenus ou non.
Couche 2 — Restrictions de rôle (ce que vous pouvez voir)
La première couche ne cache jamais rien — elle régit uniquement la modification. Pour masquer du contenu, vous utilisez des rôles.
Un rôle est un groupe de personnes nommé qui comporte une liste de restrictions. Chaque restriction est une règle qui stipule, en substance : « les membres de ce rôle ne doivent pas modifier les enregistrements qui correspondent à cette condition. » La principale fonction d'une restriction est de masquer les enregistrements correspondants — ils n'apparaissent tout simplement nulle part pour ce rôle.
Les trois niveaux
Pour un enregistrement donné, une personne se retrouve dans exactement l'un de ces cas :
┌────────────────────────────────┬──────┬───────┐
│ │ SEE │ EDIT │
├────────────────────────────────┼──────┼───────┤
│ Open │ ✓ │ ✓ * │
│ View-only │ ✓ │ ✗ │
│ Hidden (role-hidden) │ ✗ │ ✗ │
└────────────────────────────────┴──────┴───────┘
* Editing requires the matching admin right from Layer 1.
- Ouvert — visible et modifiable par toute personne disposant du droit d'administrateur correspondant.
- Lecture seule — visible, mais non modifiable. C'est simplement ce que vous obtenez pour tout enregistrement pour lequel une personne ne dispose pas du droit de modification (Couche 1). Étant donné que la visibilité est ouverte par défaut et que la modification est autorisée, la plupart des personnes ont un accès en lecture seule pour la plupart des éléments — c'est l'état normal, et non un verrouillage spécial.
- Masqué — un rôle masque l'enregistrement, de sorte qu'il n'apparaît pas du tout dans les listes de cette personne ni sur sa carte.
Comme les règles de rôle s'appliquent aux enregistrements qui répondent à une condition (et non à des pages entières), un rôle peut voir un sous-ensemble de tâches, de sites ou d'éléments, tandis qu'un autre rôle voit un sous-ensemble différent de la même collection.
Cela fonctionne à tous les niveaux
Le masquage via les rôles n'est pas une fonctionnalité propre à un seul écran. Les mêmes règles d'affichage s'appliquent de manière uniforme à l'ensemble du système — les offres d'emploi, les bons de travail, les rapports, les ressources, les sites, les stocks, les éléments de la carte, les utilisateurs, les rôles et bien d'autres éléments gèrent leurs listes en fonction des restrictions de rôle de la personne concernée. Masquez une catégorie d'enregistrements pour un rôle à un endroit, et elle sera masquée partout où ce rôle se trouve.
Les exceptions au principe « tout le monde peut tout voir »
Le paramètre par défaut « ouvert » comporte quelques exceptions délibérées :
- Les enregistrements supprimés sont masqués, sauf si une personne détient le droit Afficher les éléments supprimés et demande à les afficher. Les éléments supprimés temporairement restent récupérables mais sont masqués.
- Les sites personnels appartiennent à leur propriétaire. Le site d'inventaire personnel d'un collaborateur est visible par les autres, mais seul son propriétaire peut le modifier — quels que soient les droits d'accès au site.
- Les éléments de carte orphelins (dont la couche parente a été supprimée) restent masqués, sauf si vous affichez explicitement le contenu supprimé.
Tout le reste suit la règle : ouvert à la consultation, autorisé à la modification, restreint par rôle lorsque vous jugez que cela est important.
Comment cela se traduit dans l'espace d'administration
Vous gérez ces deux niveaux depuis le menu Admin :
- Utilisateurs — attribuez les droits d'administrateur d'une personne (Niveau 1) et son appartenance à un rôle.
- Rôles — définissez les rôles et leurs restrictions (Couche 2).
- Accorder l'accès — intégrez de nouvelles personnes et configurez leurs accès.
Pour une vue d'ensemble complète de la sécurité, consultez Authentification (comment les utilisateurs prouvent leur identité) et Autorisation (comment les droits et les rôles sont configurés en détail).