Autorisations pour les =$c->name?> :
Pour changer ces autorisations, ouvrir le fichier /src/Controller/=$c->name?>Controller.php :
-
modifier les règles (LOCALES) dans la fonction setAuthorizations_=$lab_name?>() => elles ne s'appliqueront qu'à CE laboratoire
-
modifier les règles (GÉNÉRALES) dans la fonction setAuthorizations() => elles s'appliqueront à TOUS les laboratoires
Veuillez ensuite partager ces modifications en les intégrant au code source général du logiciel (ainsi que toute autre modification effectuée)
via la commande "./PUSH_MODIFS"
|
CONDITIONS D'ACCÈS (Statut et Appartenance du matériel) |
ACTION |
GÉNÉRAL (règles par défaut) |
Utilisateur (profil) |
Responsable (profil) |
Administratif (profil Gestionnaire) |
Super Administrateur (profil) |
getAuthorizations();
foreach (array_keys($authorizations) as $action) {
?>
=$action?> |
=$authorizationsForCurrentActionAndRole?> |
=$condition_status?> |
=$condition_belonging?> |
AUTORISATIONS DES UTILISATEURS
(droits en fonction des profils)
Les tableaux ci-dessous sont générés dynamiquement en fonction des autorisations actuelles.
Ils sont donc totalement à jour et reflètent la réalité de l'expérience sur le site.
=>
Lien vers le tableau des autorisations (fait à la main, donc pas forcément à jour)
=>
Lien vers le chapitre sur les Autorisations dans la documentation technique
Tableaux des conditions d'accès pour chaque entité
';
foreach ($controllers as $controller) {
echo "{$controller->name}";
//echo '
';
}
echo '';
?>
Légende :
- Couleur
- rouge => accès restreint partiellement ou totalement (il y a une condition d'accès)
- vert => accès autorisé (PAS de condition d'accès)
- Condition sur le statut
- CREATED => Le matériel doit avoir le statut "CREATED" ("créé")
- NOT CREATED => Le matériel ne doit PAS avoir le statut "CREATED" (il doit donc avoir un statut supérieur)
- VALIDATED => Le matériel doit être validé
- ...
- Condition sur l'appartenance
- Y => L'utilisateur connecté doit être le "propriétaire" (utilisateur principal) du matériel (ou le responsable)
- N => Pas de condition d'appartenance
Exemples d'interprétation (d'après le 1er tableau ci-dessous) :
- action "add_by_copy" => créer un matériel par copie d'un autre :
-
on ne peut la faire que sur un matériel CREATED
-
un profil "user" a le droit de la faire seulement sur un matériel qui lui appartient, un "responsable" seulement sur un matériel qui lui appartient ou bien qui est du même groupe que lui,
alors qu'un "admin" (gestionnaire) ou bien "superadmin" peuvent aussi la faire sur un matériel qui ne leur appartient pas
- action "devalidate (statusCreated)" => remettre le matériel dans l'état CREATED :
-
on peut la faire sur tout matériel sauf de statut CREATED
-
un "user" n'y est pas autorisé ; un "responsable" peut la faire seulement sur un matériel qui lui appartient ou du même groupe que lui alors qu'un "admin" ou "superadmin" peut la faire sur tout matériel (sauf CREATED)
- action "upgrade (statusValidated, statusTobearchived, statusArchived)" => augmenter le statut d'un matériel (CREATED => VALIDATED => TOBEARCHIVED => ARCHIVED) :
-
on peut la faire sur tout matériel qui a le statut juste inférieur (ex: statusValidated ne peut être fait que si statut actuel est CREATED)
-
un profil "user" ou "responsable" ne peut faire que l'action statusTobearchived (demande d'archivage) sur un matériel qui lui appartient (ou du même groupe que lui pour le "responsable")
alors qu'un "admin" (et +) peut faire TOUTES les actions statusXXX et sur TOUT matériel
getAuthorizationForAction('edit'));
foreach ($controllers as $controller) {
//$mc = new MaterielsController();
/*
$controller_name = 'MaterielsController';
$controller = new $controller_name ();
$controller_name = $c.'Controller';
$controller = (new $controller_name());
*/
echo '
';
displayAuthorizationsForController($controller, $lab_name);
echo '
';
echo "Haut de page";
echo '
';
}
?>