Vous allez dire que ce plugin m'obsède et vous n'aurez pas tort.
Plus j'y réfléchis et plus le concept de zones (=ensemble de rubriques) me semble inapproprié.
Fondamentalement, Accès Restreint gère des autorisations et il me semble que le concept de profils (au sens d'ensemble d'autorisations) est plus approprié.
Ca change quoi ? Au lieu de définir une zone en tant qu'ensemble de rubriques, je définis un profil comme ensemble d'autorisations. Autrement dit, à un profil je donne des autorisations d'accès à certaines rubriques pour l'espace public d'un coté, et des autorisations d'accès à certaines rubriques de l'espace privé. Comme il s'agit d'autorisations (et non plus d'ensemble de rubriques) il est normal que les autorisations d'un profil puissent diverger entre espace public et espace privé.
De plus, il devient évident que si les autorisations définies par un profil correspondent dans le même temps un non accès à ces memes rubriques pour les autres profils. Ainsi, il est possible de faire évoluer l'héritage des droits.
Ensuite, on attribue des profils (droits) à des auteurs, soit de manière nominale (comme maintenant en les sélectionnant un par un) soit selon le statut soit selon les deux.
En faisant évoluer le plugin de cette manière, on peut reproduire les mêmes restrictions d'accès que celles actuellement existantes mais également faire des restrictions plus subtiles.
Cette manière d'envisager les choses peut permettre, à plus long terme, l'extension du plugin à la gestion d'autres types d'autorisations. Par exemple, définir des autorisations pour écrire un nouvel article dans une rubrique.
La réflexion est lancée. J'attends vos remarques et vos commentaires avant de me lancer, si ce passage du concept de zones au concept de profils vous convient, dans des modifications du plugin Accès Restreint.
Cordialement
Joseph
Joseph Larmarange a écrit :
Vous allez dire que ce plugin m'obsède et vous n'aurez pas tort.
Plus j'y réfléchis et plus le concept de zones (=ensemble de rubriques) me semble inapproprié.
Fondamentalement, Accès Restreint gère des autorisations et il me semble que le concept de profils (au sens d'ensemble d'autorisations) est plus approprié.
...
La réflexion est lancée. J'attends vos remarques et vos commentaires avant de me lancer, si ce passage du concept de zones au concept de profils vous convient, dans des modifications du plugin Accès Restreint.
non ca n'est pas exclusif.
Actuellement, il y a justement
- acces_restreint qui gere les zones d'acces, mais pas les profils, obligeant a definir auteur par auteur ses autorisations ou non
- acces_restreint_groupe, qui ne gère pas de zones explicites, mais uniquement des groupes (les profils), les exclusions se trouvant alors definies implicitement.
Les deux démarchent sont incomplètes. Il faut donc les mettre en commun
Avoir :
- les zones d'acces, que l'on définit bien unitairement comme actuellement (par rubrique, mais pourquoi pas par article dans le futur)
- les profils, qui sont un ensemble d'autorisations (d'acces à des zones, mais pourquoi pas d'autres autorisation, comme modifier un article publié précis ou autre)
C'est bien avec ces deux concepts que tu auras toute la souplesse et la clareté recherchées.
Cedric
Aujourd'hui, les zones sont un ensemble de rubriques et même plus précisément un ensemble de branches. Ce qui pose des soucis quant à la définition de droits un peu fin. Par exemple, si tu as un secteur membres avec une sous rubrique Bureau, tu ne peux pas restreindre l'accès aux membres sans qu'ils aient accès à Bureau. Tu es obligé de mettre Bureau dans un nouveau secteur. Autrement, le plugin Accès Restreint t'oblige à modifier l'arborescence de ton site pour pouvoir définir les accès. Or c'est au plugin de s'adpater à l'arborescence. Sortir Bureau de Membres n'a pas sens.
Je te renvoie à Éléments de réflexion sur la définition des zones pour accès restreint - Joseph Larmarange pour des éléments de discussion sur l'héritage des droits.
Dans le cas des groupes, les groupes sont définies comme ensemble d'auteurs.
Les profils en tant qu'ensemble d'autorisations ne sont ni des ensembles de rubriques ni des ensembles d'auteurs.
On pourrait faire des définitions de zones d'un coté et des définitions de groupes de l'autre. Mais c'est à mon sens largement compliquer les choses. Le fait d'avoir des zones (définies comme ensemble de rubriques) oblige à ce que la définition des zones soit autonome (càd ne dépend pas des autres zones), ne dépende pas du filtrage (public, privé, les deux) ce qui rend compliqué de faire des définitions de zones qui ne correspondent pas à des branches.
Si je pars sur des profils (ensemble d'autorisations) sans passer par des zones je n'ai plus la question d'avoir des ensembles de rubriques qui soient définis de manière autonome et je peux faire des définitions plus subtiles (càd ne correspondant pas forcément à des branches) et séparées pour l'espace public et l'espace privé. Techniquement, ca ne change pas les tables (à l'exception des champs publique et prive qui sont déplacés de spip_zones à spip_zones_rubriques). Simplement, si on reprend l'image de l'immeuble avec des portes et des verrous, je me contente de poser des verrous, les rubriques accessibles sont calculées alors en fonction.
Si on va vers des zones et des groupes, alors il faut rajouter une table spip_groupes, une table de jointure entre les zones et les groupes et transformer spip_zones_auteurs en spip_groupes_auteurs. N'est-ce pas au contraire alourdir l'ensemble.
La question que je me pose c'est en quoi avoir des définitions de zones autonomes en tant qu'ensemble de rubriques apportent quelque chose. On peut arriver à la meme chose juste en définissant des droits.
Joseph
Cedric a écrit :
Joseph Larmarange a écrit :
Vous allez dire que ce plugin m'obsède et vous n'aurez pas tort.
Plus j'y réfléchis et plus le concept de zones (=ensemble de rubriques) me semble inapproprié.
Fondamentalement, Accès Restreint gère des autorisations et il me semble que le concept de profils (au sens d'ensemble d'autorisations) est plus approprié.
...
La réflexion est lancée. J'attends vos remarques et vos commentaires avant de me lancer, si ce passage du concept de zones au concept de profils vous convient, dans des modifications du plugin Accès Restreint.
non ca n'est pas exclusif.
Actuellement, il y a justement
- acces_restreint qui gere les zones d'acces, mais pas les profils, obligeant a definir auteur par auteur ses autorisations ou non
- acces_restreint_groupe, qui ne gère pas de zones explicites, mais uniquement des groupes (les profils), les exclusions se trouvant alors definies implicitement.
Les deux démarchent sont incomplètes. Il faut donc les mettre en commun
Avoir :
- les zones d'acces, que l'on définit bien unitairement comme actuellement (par rubrique, mais pourquoi pas par article dans le futur)
- les profils, qui sont un ensemble d'autorisations (d'acces à des zones, mais pourquoi pas d'autres autorisation, comme modifier un article publié précis ou autre)
C'est bien avec ces deux concepts que tu auras toute la souplesse et la clareté recherchées.
Cedric
Selon Cedric <cedric.morin@yterium.com>:
Joseph Larmarange a écrit :
> Vous allez dire que ce plugin m'obsède et vous n'aurez pas tort.
>
> Plus j'y réfléchis et plus le concept de zones (=ensemble de rubriques)
> me semble inapproprié.
> Fondamentalement, Accès Restreint gère des autorisations et il me semble
> que le concept de profils (au sens d'ensemble d'autorisations) est plus
> approprié.
> ...
>
> La réflexion est lancée. J'attends vos remarques et vos commentaires
> avant de me lancer, si ce passage du concept de zones au concept de
> profils vous convient, dans des modifications du plugin Accès Restreint.
>
non ca n'est pas exclusif.
Actuellement, il y a justement
- acces_restreint qui gere les zones d'acces, mais pas les profils,
obligeant a definir auteur par auteur ses autorisations ou non
- acces_restreint_groupe, qui ne gère pas de zones explicites, mais
uniquement des groupes (les profils), les exclusions se trouvant alors
definies implicitement.
Les deux démarchent sont incomplètes. Il faut donc les mettre en commun
Avoir :
- les zones d'acces, que l'on définit bien unitairement comme
actuellement (par rubrique, mais pourquoi pas par article dans le futur)
- les profils, qui sont un ensemble d'autorisations (d'acces à des
zones, mais pourquoi pas d'autres autorisation, comme modifier un
article publié précis ou autre)
C'est bien avec ces deux concepts que tu auras toute la souplesse et la
clareté recherchées.
Cedric
pour info, avec acces_restreint_groupe une rubrique devient automatiquement
"restreinte" dès quelle est affectée à au moins un groupe...
l'idée de jouer avec d'autres type d'autorisation me tente beaucoup mais j'ai
peur de faire une usine à gaz...
@+Coyote
C'est bien avec ces deux concepts que tu auras toute la souplesse et la
clareté recherchées.
Cedric
pour info j'ai ouvert une boite pour recevoir les infos sur le sujet, histoire de préparer la suite pour la doc, c'est ici "http://www.spip-contrib.net/Acces-restreint-V2-les-objectifs"
question : cette évolution se fera t'elle en partant de zero, ou à partir d'une evolution d'un pugin existant, par exemple acces restreint 'ou un autre) ... dans ce cas n'y aurait-il pas interet à ouvrir sur la zone des maintenant une branche pour "acces restreint V2", histoire de matérialiser cette évolution ?
@+ NicolasR