doc/securite.txt
author Sandrine Ribeau <sandrine.ribeau@logilab.fr>
Tue, 11 Nov 2008 14:27:19 -0800
changeset 22 50f20cf0f440
parent 0 b97547f5f1fa
child 36 f6bcad5c6dfe
permissions -rw-r--r--
Merged chap_fondements_cubicweb and chap_bases_framework_cubicweb as they were both describing differents aspects of CubicWeb framework. Replaced original content of mise_en_place_environemment that was by mistake erased and replaced with chap_migration content.

Le contrôle d'accès
===================


Vocabulaire
-----------
* Personne, Societe définissent deux *types* d'entité 
* "Personne travaille_pour Societé" déclare qu'une relation
  travaille_pour peut exister entre une entité de type Personne et une
  entité de type Societe. L'ensemble des règles de ce type appliqué
  à la relation "travaille_pour" définit le schéma de la relation
  "travaille_pour"


Description du modèle de sécurité
---------------------------------

Le modèle de sécurité de cubicweb est un modèle fondé sur des `Access
Control List`. Les notions sont les suivantes :

* utilisateurs et groupes d'utilisateurs
* un utilisateur appartient à au moins un groupe
* droits (lire, modifier, créer, supprimer) 
* les droits sont attribués aux groupes (et non aux utilisateurs)

Pour CubicWeb plus spécifiquement :

* on associe les droits au niveau des schemas d'entites / relations
* pour chaque type d'entité, on distingue les droits de lecture,
  ajout, modification et suppression
* pour chaque type de relation, on distingue les droits de lecture,
  ajout et suppression (on ne peut pas modifer une relation)
* les groupes de base sont : Administrateurs, Utilisateurs, Invités
* les utilisateurs font par défaut parti du groupe Utilisateurs
* on a un groupe virtuel "Utilisateurs Propriétaires", auquel on peut
  associer uniquement les droits de suppression et de modification
* on ne peut pas mettre d'utilisateurs dans ce groupe, ils y sont
  ajoutés implicitement dans le contexte des objets dont ils sont
  propriétaires 
* les droits de ce groupe ne sont vérifiés que sur
  modification / suppression si tous les autres groupes auxquels
  l'utilisateur appartient se sont vu interdir l'accès