Rôles et permissions
Matrice complète des rôles Bordoly (Admin, Opérateur, Technicien, Chauffeur) avec leurs droits sur sites, enlèvements, sessions, rapports, facturation et audit.
Bordoly distingue trois rôles d'utilisateurs et plusieurs profils mobiles. Ce qui peut sembler complexe au premier abord est en réalité simple : les permissions Bordoly sont dérivées de votre profil TrackDéchets. Vous ne configurez pas les droits ligne par ligne — vous alignez vos membres TD, et Bordoly en déduit le rôle.
Hiérarchie des rôles — l'admin a toutes les permissions, l'opérateur gère le quotidien, le technicien et le chauffeur sont limités au terrain.
TrackDéchets reste la source de vérité
Bordoly ne maintient pas son propre annuaire de droits : le rôle de chaque utilisateur est calculé à partir des permissions TrackDéchets de son établissement. Si vous voulez promouvoir un Opérateur en Admin, vous modifiez son rôle TD — la prochaine synchronisation propage le changement.
Cela évite les dérives de droits silencieuses (un admin Bordoly qui n'aurait plus les droits TD correspondants), et garantit qu'aucune action ne peut être menée par quelqu'un qui n'a pas la responsabilité légale équivalente côté TD.
Les rôles disponibles
Bordoly expose trois rôles côté API + base de données, déclarés dans
packages/domain/src/types/user.ts :
| Rôle | Étendue d'accès |
|---|---|
| Admin | Tout — configuration globale, utilisateurs, audit, facturation |
| Opérateur | Opérations métier : enlèvements, sessions, sites, conteneurs |
| Technicien | App mobile uniquement — saisies terrain, photos, sessions |
Trois profils complémentaires apparaissent en pratique :
| Profil | Accès |
|---|---|
| Chauffeur (mobile) | App mobile, tournée du jour, signature BSD |
| Billing Owner | Statut additionnel — un seul par tenant, propriétaire abonnement |
| Tiers via portail public | Lecture seule d'une session via lien sécurisé, sans création de compte |
Matrice des permissions
| Capacité | Admin | Opérateur | Technicien (mobile) | Chauffeur (mobile) | Tiers (portail) |
|---|---|---|---|---|---|
| Sites — voir | ✓ | ✓ | Lecture seule | ✗ | ✗ |
| Sites — créer/modifier | ✓ | ✓ | Création limitée terrain | ✗ | ✗ |
| Sites — supprimer | ✓ | ✓ | ✗ | ✗ | ✗ |
| Enlèvements (pickups) | ✓ | ✓ | ✗ | Lecture (tournée) | ✗ |
| Sessions — créer/clore | ✓ | ✓ | ✗ | ✗ | ✗ |
| Sessions — voir + saisir | ✓ | ✓ | ✓ (saisies + photos) | ✗ | Lecture seule |
| Rapports PDF / PPTX | ✓ | ✓ | ✗ | ✗ | ✗ |
| Registre DREAL / CSV | ✓ | ✓ | ✗ | ✗ | ✗ |
| Facturation — consultation | ✓ | Lecture seule | ✗ | ✗ | ✗ |
| Facturation — gestion | BO uniquement | ✗ | ✗ | ✗ | ✗ |
| Journal d'audit | ✓ | ✗ | ✗ | ✗ | ✗ |
| Utilisateurs — inviter | ✓ | ✗ | ✗ | ✗ | ✗ |
| Conteneurs déchets | ✓ | Lecture seule | ✗ | ✗ | ✗ |
| App mobile (PIN) | ✗ | ✗ | ✓ | ✓ | ✗ |
Les clés côté code :
manage.sites,manage.pickups,manage.sessions,view.audit,manage.wasteContainers,tech.waste-entries. Voirpackages/domain/src/rbac/rights.tspour la liste complète.
Notes par rôle
Admin — peut tout faire dans le tenant. Accès au journal d'audit
(view.audit, réservé Admin), à la matrice des conteneurs déchets, et à la liste des
utilisateurs. C'est le seul rôle qui peut inviter, désactiver, ou changer le statut
des autres comptes. Dérivé d'un membre Admin sur l'établissement TD correspondant.
Opérateur — fait tourner l'opérationnel quotidien : planifier des enlèvements, ouvrir/fermer des sessions, suivre les transporteurs, créer/modifier des sites, lancer des rapports. N'a pas accès au journal d'audit ni à l'invitation d'utilisateurs.
Technicien (mobile) — dédié au terrain via l'app mobile. Peut consulter ses sessions assignées, saisir des entrées de déchets, prendre des photos horodatées et géolocalisées, créer un site rapidement si une intervention l'exige. Pas d'accès au back-office web. Authentification e-mail + PIN à 6 chiffres (TTL 30 jours, lockout après 5 tentatives). Voir Installer l'app technicien.
Chauffeur (mobile) — accède à sa tournée du jour, peut signer les BSDs au moment
de l'enlèvement. Sa fiche est gérée séparément (table drivers) pour faciliter la
gestion des intérimaires. Authentification identique aux techniciens. Voir
App chauffeur — tournée du jour.
Tiers via portail public — un transporteur sans compte Bordoly, un client final ou un inspecteur DREAL peut recevoir un lien sécurisé vers une session précise. Code d'accès à 12 caractères, rate-limit 20 req/min/IP, lecture seule. Voir Portail public.
Billing Owner (BO) — n'est pas un rôle séparé mais un statut ajouté à un utilisateur Admin. Un seul BO par tenant. C'est lui qui :
- voit et modifie les détails de l'abonnement Stripe,
- reçoit les factures par e-mail,
- peut transférer son statut à un autre Admin via Transférer la propriété.
Les autres Admins voient une version lecture seule de la page facturation, avec un bandeau qui indique qui est le BO actuel.
Comment changer un rôle ?
- Modifiez d'abord le rôle côté TrackDéchets sur l'établissement concerné.
- Dans Bordoly, ouvrez Utilisateurs.
- Cliquez sur Synchroniser dans l'en-tête de l'annuaire — la propagation est immédiate.
Voir Inviter un administrateur web pour le détail des écrans.
Et après ?
Vous êtes bloqué ? Écrivez-nous à support@bordoly.fr — engagement Standard : réponse sous 4h ouvrées (lun-ven 9h-18h CET). Entreprise : sous 1h ouvrées (8h-20h CET).