Rôles et autorisations CS Resource

Répartition complète de ce que chaque rôle dans CS Resource peut et ne peut pas faire.

Un utilisateur CS Resource peut se voir attribuer l'un des trois rôles dans l'application. Chaque rôle dispose d'autorisations spécifiques, détaillées dans l'article ci-dessous. Utilisez ce guide pour déterminer le meilleur rôle pour les utilisateurs de votre application de ressources.


1. Lecteur

PEUT FAIRE :

  • Tableau de bord

    • Voir les statistiques générales de la base de données

NE PEUT PAS FAIRE :

  • Vraiment rien 🤷

  • Créer, mettre à jour ou supprimer des ressources

  • Lire les ressources (pas de resource:read permission)

  • Voir les statistiques spécifiques aux ressources

  • Voir l'activité récente

  • Gérer les utilisateurs

  • Gérer les attributs, groupes, zones de service, sources de financement

  • Gérer la taxonomie

  • Gérer les conditions de service

  • Gérer les agences externes

  • Gérer les types d'audit

  • Voir les statistiques de mise à jour annuelle

Cas d'utilisation :

  • Membre général de l'organisation qui ne conserve pas et ne gère pas la base de données de ressources


2. Rédacteur

PEUT FAIRE :

  • Gestion des ressources

    • Créer des ressources

    • Lire les ressources

    • Mettre à jour les ressources

    • Supprimer des ressources

  • Demandes de changement pour mise à jour annuelle

    • Créer des demandes de changement

    • Lire les demandes de changement

    • Mettre à jour les demandes de changement

    • Supprimer les demandes de changement

  • Accès au tableau de bord

    • Voir l'activité récente

    • Voir les statistiques des ressources

    • Voir mes tâches

    • Voir les statistiques de mise à jour annuelle

  • Accès en lecture seule à la configuration

    • Lire les attributs (attribute-manager:read)

    • Lire les types d'audit (audit-type-manager:read)

    • Lire les sources de financement (funding-source:read)

    • Lire les groupes (group-manager:read)

    • Lire les zones de service (service-area-manager:read)

    • Lire les conditions de service (service-condition-manager:read)

    • Lire la taxonomie (taxonomy:read)

NE PEUT PAS FAIRE :

  • Créer, mettre à jour ou supprimer des attributs

  • Créer, mettre à jour ou supprimer des types d'audit

  • Créer, mettre à jour ou supprimer des sources de financement

  • Créer, mettre à jour ou supprimer des groupes

  • Créer, mettre à jour ou supprimer des zones de service

  • Créer, mettre à jour ou supprimer des conditions de service

  • Créer, mettre à jour ou supprimer des termes de taxonomie

  • Gérer les utilisateurs

  • Gérer les agences externes

  • Gérer les mises à jour annuelles (uniquement les demandes de changement)

  • Voir les statistiques personnelles

Cas d'utilisation :

  • Rôle principal pour les conservateurs de ressources qui modifient les ressources

  • Peut créer/metre à jour/supprimer des ressources mais ne peut pas modifier la configuration du système

  • Peut gérer les tâches et participer aux mises à jour annuelles


3. Superadmin

PEUT FAIRE :

  • TOUT

  • Contourne toutes les vérifications d'autorisation

  • A superadmin scope qui accorde un accès illimité

  • Peut accéder à n'importe quel endpoint indépendamment des exigences de scope

NE PEUT PAS FAIRE :

  • Rien - accès complet au système

Cas d'utilisation :

  • Superutilisateurs du système

  • Accès d'urgence

  • Développement/test

  • Niveau d'accès le plus élevé


Référence des scopes de permission

Opérations sur les ressources

  • resource:create - Créer de nouvelles ressources

  • resource:read - Voir les ressources

  • resource:update - Modifier des ressources existantes

  • resource:delete - Supprimer des ressources

Gestion des utilisateurs

  • user-manager:create - Ajouter de nouveaux utilisateurs

  • user-manager:read - Voir les utilisateurs

  • user-manager:update - Modifier les utilisateurs

  • user-manager:delete - Supprimer des utilisateurs

Gestion de la configuration

  • attribute-manager:* - Gérer les attributs

  • audit-type-manager:* - Gérer les types d'audit

  • group-manager:* - Gérer les groupes

  • service-area-manager:* - Gérer les zones de service

  • funding-source:* - Gérer les sources de financement

  • taxonomy:* - Gérer les termes de taxonomie

  • service-condition-manager:* - Gérer les conditions de service

  • external-agency:* - Gérer les agences externes

Opérations de mise à jour annuelle

  • annual-update-assignment:* - Gérer les affectations de mise à jour annuelle

  • annual-update-change-request:* - Gérer les demandes de changement

  • annual-update:manage - Gestion complète de la mise à jour annuelle

  • annual-update-stats:read - Voir les statistiques de mise à jour annuelle

Accès au tableau de bord

  • dash-personal-stats:read - Statistiques personnelles

  • dash-recent-activity:read - Fil d'activité récent

  • dash-resource-stats:read - Statistiques des ressources

  • dash-my-tasks:read - Vue Mes tâches

Spécial

  • superadmin - Contourne toutes les vérifications d'autorisation


Matrice de comparaison des rôles

Permission
Lecteur
Rédacteur
Superadmin

CRUD des ressources

Gestion des utilisateurs

Gestion des attributs

👁️

Gestion des groupes

👁️

Gestion des zones de service

👁️

Gestion des sources de financement

👁️

Gestion de la taxonomie

👁️

Gestion des conditions de service

👁️

Gestion des agences externes

Gestion des types d'audit

👁️

Mise à jour annuelle : Gérer

Mise à jour annuelle : Demandes de changement

Mise à jour annuelle : Affectations

Tableau de bord : Statistiques des ressources

Tableau de bord : Activité récente

Tableau de bord : Mes tâches

Tableau de bord : Statistiques personnelles

Légende :

  • ✅ = Accès complet (créer, lire, mettre à jour, supprimer)

  • 👁️ = Accès en lecture seule

  • ❌ = Aucun accès


Remarques sur le contrôle d'accès

  1. Portée organisationnelle : Tous les rôles sont limités à l'organisation de l'utilisateur

  2. Portée par agence : Les rôles Agency Admin et Agency Writer peuvent être restreints à des agences spécifiques

  3. Portée par site : Les utilisateurs peuvent être affectés à des sites spécifiques (filtrage supplémentaire)

  4. Contournement Superadmin : Le rôle Superadmin contourne toutes les vérifications d'autorisation dans le middleware

  5. Validation des permissions : Tous les endpoints utilisent requireScope middleware pour valider les permissions


Cas d'utilisation courants

Lecteur

  • Examinateurs de la mise à jour annuelle

  • Parties prenantes qui doivent voir l'avancement de la mise à jour annuelle

  • Participants en lecture seule aux flux de travail de mise à jour annuelle

Rédacteur

  • Conservateurs principaux des ressources

  • Éditeurs de contenu qui maintiennent les données de ressources

  • Utilisateurs qui doivent créer/modifier des ressources mais pas configurer le système

Superadmin

  • Superutilisateurs du système

  • Accès d'urgence

  • Environnements de développement/test


Détails de mise en œuvre

  • Stockage des permissions : Permissions stockées sous forme de chaînes séparées par des virgules dans role.permission_scope

  • Validation: requireScope le middleware vérifie les permissions du rôle de l'utilisateur

  • Vérification Superadmin : Gestion spéciale pour superadmin scope qui contourne toutes les vérifications

  • IDs des rôles : IDs fixes (1-6) pour les rôles standards

  • Portée organisationnelle : Les rôles appartiennent aux organisations via organizationId

Mis à jour

Ce contenu vous a-t-il été utile ?