IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

gestion des droits avec bit bashing


Sujet :

Langage PHP

  1. #1
    Membre averti Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Points : 439
    Points
    439
    Par défaut gestion des droits avec bit bashing
    Bonjour,

    Je développe un intranet dont la granularité des droits est poussée très loin.
    Grossièrement : un objet source (utilisateur, département, l'intranet lui-même, un dossier, un client...) à un droit (1) ou non (0) de (voir, créer, modifier, désactiver, se logguer, supprimer, uploader, envoyer email...N droits) sur un autre objet cible (utilisateur, etc... même liste d'objets).

    J'ai réfléchis au principe du bit bashing pour gérer ces droits mais il me semble que dans mon cas, ce ne serait pas la meilleure solution au vue de l'étendue des droits (trop de puissances binaire à gérer).
    Donc je pense plutôt partir sur une table matricielle de droits entre objets source et objets cible basée sur des Int valant 1 ou 0.

    Pouvez-vous me donner votre avis ?
    Merci

  2. #2
    Membre averti
    Homme Profil pro
    Gérant
    Inscrit en
    Février 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Dom-Tom

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Février 2006
    Messages : 263
    Points : 333
    Points
    333
    Par défaut
    Bonjour,

    A mon avis, le bit bashing est pourtant ce qu'il y a de mieux dans ton cas...

    Imagine ne serait-ce qu'un instant que tu as oublié de mettre un droit ou un groupe d'utilisateur particulier dans ton développement une fois que tu as tout terminé (ah malheur !)... Tu pourras toujours rajouter celui-ci très facilement et d'ailleurs tu pourras étendre ton programme par la suite sans aucun problème...

    Sans compter que tu pourras aussi facilement utiliser les droits impliqués !

    Donc personnellement, je vote pour le bit bashing !

    Maintenant si tu ne veux pas de bit bashing, tu peux utiliser simplement la BDD avec :
    Table user -> Ligne utilisateur -> Champs droit (tableau créé dans le formulaire) et Champs groupe (du même genre que "droit" si tu souhaite aussi avoir des groupes)
    Là pour le coup tu auras un système ultra précis mais tu dois lister dans un premier temps tous les droits et tous les groupes.

    Par la suite si tu rajoutes l'un ou l'autre des droits/groupes, ce n'est pas difficile de mettre à jour les tableaux correspondant dans la BDD.

    Moi j'utilise les 2 types suivant la complexité du projet, plus c'est complexe et plus je me dirige sur du bit bashing (voir je couple en plus avec une BDD pour une ultraprécision)

    J'espère que j'ai été assez clair !

    Bon courage.

Discussions similaires

  1. Gestion des droits avec OpenLDAP
    Par D1@blo dans le forum Linux
    Réponses: 0
    Dernier message: 10/01/2014, 12h56
  2. Gestion de droits access Bit Bashing
    Par redah75 dans le forum Langage
    Réponses: 4
    Dernier message: 02/10/2013, 17h35
  3. gestion des droits et bit bashing
    Par orocques dans le forum Langage
    Réponses: 4
    Dernier message: 17/02/2010, 13h55
  4. Gestion des droits avec session serveur
    Par comode dans le forum Windows XP
    Réponses: 3
    Dernier message: 17/10/2009, 21h39
  5. Gestion des droits avec Oracle
    Par robin.pariset dans le forum Administration
    Réponses: 6
    Dernier message: 02/11/2007, 08h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo