Rôles & Niveaux d'accès
Comprendre le système de rôles de CNX LINK et les permissions associées à chaque niveau d'accès.
Vue d'ensemble
CNX LINK s'appuie sur un système de rôles fonctionnels pour contrôler l'accès aux modules (projets, requêtes, documents, événements, administration).
Les rôles sont exposés par l'API via l'endpoint
GET /v1/auth/roles
et sont stockés dans le champ
users.status.
Cette page donne une vue produit/fonctionnelle ; pour le détail technique, référez-vous aussi à la documentation API et aux contrôleurs concernés.
Rôles disponibles
Prospect
Utilisateur en phase de découverte de la plateforme.
- Accès limité aux fonctionnalités publiques et basiques.
- Peut recevoir des événements d'information et des notifications spécifiques.
- Peut être converti en Client ou Client Promoteur.
Client
Utilisateur client standard de la plateforme CNX LINK.
- Accès à ses propres projets, requêtes et documents liés.
- Peut créer des requêtes, commenter, joindre des documents.
- Accès aux événements et discussions auxquels il est associé.
Client Promoteur
Client clé, souvent porteur ou sponsor de projets.
- Mêmes droits qu'un Client sur ses projets et requêtes.
- Visibilité renforcée sur les projets sponsorisés.
- Peut recevoir plus de notifications et de rapports.
Assistant
Rôle attribué aux assistants des clients, avec des accès réduits aux documents sensibles et fonctionnalités limitées.
- Peut aider à la création et au suivi des requêtes pour le compte de clients.
- Accès réduit aux documents sensibles (pas d'accès complet à tous les documents).
- Accès partiel à certains écrans de back-office (selon les contrôleurs).
- N'a pas les pleins pouvoirs d'un Administrateur.
Administrateur
Membre de l'équipe CNX (interne), avec des droits avancés sur les données.
- Peut accéder à la plupart des écrans de back-office.
- Peut voir et traiter les requêtes des clients.
- Peut gérer les projets, événements et documents tactiques/opérationnels.
- N'a pas accès aux documents stratégiques (contrats, TDR, offres, lettres, devis, factures).
Visualiseur
Rôle en lecture seule pour consulter les données sans pouvoir les modifier.
- Accès en lecture seule aux projets, requêtes et documents.
- Peut consulter les événements et discussions.
-
Accès à
/v1/all-documents(rôle admin en lecture seule). - Pas de droits de modification ou de création.
Partenaire
Partenaire externe de CNX avec accès limité aux projets et documents partagés.
- Accès aux projets et documents qui lui sont explicitement partagés.
- Peut consulter et commenter sur les projets assignés.
- Accès limité aux fonctionnalités de la plateforme.
Super Administrateur
Rôle le plus élevé, réservé à l'équipe CNX pour l'administration globale.
- Accès complet à toutes les ressources (utilisateurs, projets, requêtes, événements).
- Peut modifier le mot de passe d'un utilisateur, générer des fiches d'identité PDF, etc.
-
Accès aux vues globales comme
/v1/all-documentset aux actions sensibles.
Matrice des permissions
Cette matrice reflète la logique actuellement implémentée dans les contrôleurs
(notamment AuthController, ProjectController,
EventController, RequestController).
| Action |
Clients (prospect, client, client-promoter, partenaire) |
Assistant | Viewer | Admin | Super-admin |
|---|---|---|---|---|---|
| Accéder à ses propres requêtes | ✓ | ✓ | ✓ | ✓ | ✓ |
| Voir et traiter les requêtes des clients | — | Partiel | — | ✓ | ✓ |
| Créer / gérer les projets internes | — | Selon config | — | ✓ | ✓ |
Accéder à /v1/all-documents |
— | — | ✓ | ✓ | ✓ |
| Télécharger documents tactiques (business case, charte, livrables) | ✓ | ✓ | ✓ | ✓ | ✓ |
| Télécharger documents stratégiques (contrats, TDR, offres, lettres, devis, factures) | ✓ | ✓ | ✓ | — | ✓ |
| Télécharger documents opérationnels (documents généraux) | ✓ | ✓ | ✓ | ✓ | ✓ |
| Accéder aux documents sensibles | — | Accès réduit | — | ✓ | ✓ |
| Générer la fiche d'identité PDF d'un utilisateur | — | — | — | ✓ | ✓ |
| Changer le mot de passe d'un autre utilisateur | — | — | — | — | ✓ |
| Accéder aux vues back-office (dashboard admin) | — | Limité | Lecture seule | ✓ | ✓ |
| Modifier / supprimer n'importe quel événement | — | — | — | — | ✓ |
| Modifier / supprimer n'importe quel message | — | — | — | — | ✓ |
Note : certains comportements fins (par module) sont décrits directement dans la documentation Swagger et le code des contrôleurs.
Restrictions d'accès par catégorie de documents
Les documents sont organisés en trois catégories avec des restrictions d'accès spécifiques selon les rôles.
Documents Stratégiques
Types : Contrats, TDR, Offres, Lettres de commande, Lettres administratives, Devis, Factures, Lettres de mission
Rôles autorisés :
- • super-admin
- • sponsor
- • client, client-promoter
- • prospect
- • assistant
- • viewer (lecture seule)
Rôles non autorisés :
- • admin
- • copil, cso, cs
- • partenaire
Documents Tactiques
Types : Business Case, Charte du projet, Livrables
Rôles autorisés :
- • super-admin, admin
- • sponsor
- • copil
- • client, client-promoter
- • prospect
- • assistant
- • partenaire
- • viewer (lecture seule)
Rôles non autorisés :
- • cso, cs
Documents Opérationnels
Types : Documents généraux/divers
Rôles autorisés :
- • super-admin, admin
- • sponsor
- • copil, cso, cs
- • client, client-promoter
- • prospect
- • assistant
- • partenaire
- • viewer (lecture seule)
Rôles non autorisés :
- • Aucun (tous les rôles ont accès)
Note importante : Le rôle admin n'a pas accès aux documents stratégiques (contrats, TDR, offres, lettres, devis, factures). Seul le super-admin a accès complet à tous les types de documents.
Rôles dans l'API
Dans le code, les rôles sont majoritairement utilisés via des conditions sur
$user->status,
par exemple :
Accès Admin / Super-admin
in_array($user->status, ['admin', 'super-admin'])
Utilisé dans ProjectController, EventController,
RequestController, etc.
Super-admin uniquement
$user->status === 'super-admin'
Pour les opérations critiques (comme PUT /v1/users/{id}/change-password).
Clients
Les statuts prospect, client,
client-promoter sont traités comme des profils « côté client »
Avec accès restreint à leurs propres ressources.
Bonnes pratiques d'assignation
Limiter le rôle super-admin
À un très petit nombre de comptes internes (équipe CNX uniquement).
Utiliser admin
Pour l'équipe opérationnelle qui gère les projets, événements, requêtes et documents au quotidien.
Utiliser viewer pour la consultation
Pour les profils qui ont besoin d'accéder aux données en lecture seule sans pouvoir les modifier.
Utiliser partenaire pour les partenaires externes
Pour les partenaires externes qui ont besoin d'accéder uniquement aux projets et documents qui leur sont explicitement partagés.
Réserver assistant aux assistants des clients
Pour les profils d'appui (support, PMO) qui aident les clients mais ne doivent pas tout administrer. Accès réduit aux documents sensibles.
Différencier client et client-promoter
Pour mieux refléter la gouvernance (sponsors, décideurs, etc.).