display: block; border-style: none; text-align: center; background: white; max-width: 100%; margin: 3rem auto; padding: 3px; text-align: center; }
Autorisations de page
Les autorisations d'utilisateur/de groupe pour les pages sont :
OPTION | VALEUR | DESCRIPTION |
---|---|---|
Configuration | admin.configuration | Donne à l'utilisateur l'accès à la zone de configuration de l'administration. |
⤿ Pages Configuration | admin.configuration.pages | Donne à l'utilisateur l'accès à la configuration des pages trouvée dans la zone Pages de l'administration. |
Pages | admin.pages | Donne à l'utilisateur un accès complet à la zone Pages de l'administration. |
⤿ Create | admin.pages.create | Donne à l'utilisateur l'accès Créer des pages. |
⤿ Read | admin.pages.read | Donne à l'utilisateur l'accès Lire aux pages. |
⤿ Update | admin.pages.update | Donne à l'utilisateur l'accès Mise à jour des pages. |
⤿ Delete | admin.pages.delete | Donne à l'utilisateur l'accès Supprimeraux pages. |
⤿ List | admin.pages.list | Donne à l'utilisateur l'accès à la zone Pages de l'administration. |
Pages
dans l'administration, ils peuvent visiter directement la page d'édition et effectuer ces actions à partir de là.
Les valeurs possibles pour les autorisations sont :
OPTION | VALEUR | DESCRIPTION |
---|---|---|
Allowed | true |
Autorise l'exécution d'une action s'il n'y a pas d'autorisation Refusée au même niveau. |
Denied | false |
Empêche l'exécution de l'action. Si l'utilisateur a défini à la fois Autorisé et Refusé, l'autorisation Refusée l'emporte. |
Not set | null |
Aucun effet, mais agit comme Refusée si aucune autre règle ne s'applique. |
Les autorisations définies spécifiquement pour le compte d'utilisateur ont priorité sur les autorisations de groupe. Si l'autorisation n'a pas été définie dans le compte d'utilisateur, la vérification d'accès sera effectuée pour tous les groupes d'utilisateurs auxquels l'utilisateur appartient. Si l'un des groupes d'utilisateurs a refusé l'action, l'utilisateur n'a aucune autorisation pour l'action. Sinon, si l'un des groupes d'utilisateurs a autorisé l'action, l'autorisation sera accordée. Si l'autorisation n'a été définie dans aucun des groupes de l'utilisateur, l'autorisation de super utilisateur agit comme universellement autorisée, sinon refusée sera appliquée.
Les autorisations définies pour les comptes d'utilisateurs et les groupes d'utilisateurs agissent comme des autorisations par défaut pour la gestion des pages. Toutes ces règles peuvent être remplacées dans l'onglet Sécurité de n'importe quelle page.
Flux de travail de vérification de l'accès CRUD à la page
Le flux de travail de vérification d'autorisation CRUD pour une page individuelle est le suivant :
- Définir l'action =
créer
,lire
,mettre à jour
,supprimer
oulister
- Parcourir tous les
groupes de pages
à partir de la page actuelle- match au groupe d'
auteurs
spéciaux si l'utilisateur est répertorié dans lesauteurs de la page
- match au
groupe
spécial par défaut si l'utilisateur est connecté - match au groupe si l'utilisateur a également le groupe
- si match
- si l'action autorise le retour de
Refuser
: s'arrête immédiatement et renvoiefalse
- si l'action autorise le retour de
Autoriser
: définir le drapeau d'autorisation =true
- si l'action autorise le retour de
- passer au groupe suivant
- match au groupe d'
- Après avoir parcouru tous les groupes, vérifiez si l'utilisateur a l'autorisation pour l'action
- si le drapeau d'autorisation est
true
: renvoietrue
- si le drapeau d'autorisation est
- Vérifiez les autorisations d'administration globale des pages de l'utilisateur (une seule fois)
- si l'action autorise le retour de
Refuser
: renvoiefalse
- si l'action autorise le retour de
Autoriser
: renvoietrue
- si l'action autorise le retour de
- Vérifier si la page hérite des autorisations parentales
- si
Inherit Permissions
=Yes
, faire les mêmes vérifications avec la page parent - sinon retourne
null
- si
Page racine
La page racine est une page spéciale dans Grav 1.7+ qui permet aux administrateurs du site de définir des autorisations par défaut pour toutes les pages. Il ne peut être vu que par un super utilisateur ou un utilisateur disposant des droits de configuration des pages.
La page racine sera enregistrée dans le fichier user/pages/root.md
et ne contient aucun contenu car la page est actuellement inaccessible (cela peut changer à l'avenir).