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

ALM Discussion :

Gérer des droits utilisateur dans un programme


Sujet :

ALM

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 198
    Par défaut Gérer des droits utilisateur dans un programme
    Bonjour,

    Introduction
    Je développe une petite application en C# utilisant une base de donnée Access.
    Dans mon application, j'aimerais gérer les droits des utilisateurs sur les différentes actions que permet le programme.

    Existant
    C'est relativement simple, deux types de droits: Les admins et les users.

    Pour le moment au moment du login, je met un attribut static avec le type de droit de l'utilisateur (admin ou user). Et a chaque action qui requière un admin je vérifie l'attribut. Mais cela ne me semble pas très propre.

    Question
    Ma question est ou mettre le code du contrôle des utilisateurs ? Y a-t'il un design pattern ou quelque chose comme ça pour gérer ce cas?



    Merci d'avance

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    une réponse simple serait :

    liste ou tableau des actions avec liste/tableau/attribut corespondant Available (booléen).

    Initialisé à faux pour toutes celles que ne peut pas faire un utilsateur normal, à vrai pour toutes celles que ne peuvent faire tous


    Et ensuite simplement une mise à vrai des bons Available pour les bonnes actions en cas d'admin..

    Ceci permet en outre d'avoir plus de niveau que user/admin



    Ensuite, une action générale :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    si Available
        execute
    fin si

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 198
    Par défaut
    Merci pour ta réponse.

    Mon tableau c'est un attribut global ? un attribut static ? un attribut dans un singleton ?
    Je sais qu'au final ça fonctionne, mais je suppose qu'il y a bien une solution qui se démarque.

    Tu penses qu'il me suffirait de rajouter une condition if Availaible comme dans ton code pour chaque actions exécuter ?

    Les mots de passes des utilisateurs se mettent dans la même DB que celle des données ?

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par AsPrO Voir le message
    Mon tableau c'est un attribut global ? un attribut static ? un attribut dans un singleton ?
    Tout dépend de ton langage, architecture logicielle, etc etc...

    Sans avoir plus d'info, impossible de choisir, à part le principe de "proximité"..


    Citation Envoyé par AsPrO Voir le message
    Tu penses qu'il me suffirait de rajouter une condition if Availaible comme dans ton code pour chaque actions exécuter ?
    certainement


    Citation Envoyé par AsPrO Voir le message
    Les mots de passes des utilisateurs se mettent dans la même DB que celle des données ?
    J'aurais tendance à dire certainement pas....

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 198
    Par défaut
    Citation Envoyé par souviron34 Voir le message
    Tout dépend de ton langage, architecture logicielle, etc etc...

    Sans avoir plus d'info, impossible de choisir, à part le principe de "proximité"..
    Mmh, c'est une petite application en C# divisée en 4 projets :

    • GUI : Tous les composants graphiques
    • Database : contient les DTO, les classes "Tables", la connection avec la Db
    • Reporting : contient ce qui concerne le reporting crystal report
    • Controler : contient le code qui permet de me connecter à différents périphériques


    Je sais pas si ça te suffit comme informations.
    Je sais que ca prend du temps mais n'hésites pas à critiquer cette division, ou de me mettre sur une autre voix ou article en parlant.

    Citation Envoyé par souviron34 Voir le message
    J'aurais tendance à dire certainement pas....
    Pour quelles raisons ? Je suppose que ça à avoir avec la sécurité mais je ne vois rien.


    Pour le mot de passe de la base de donnée, je la stoque directement dans le programme ? Mais il va paraitre en clair si on le désassemble ... Quelle est la solution ?


    Merci

Discussions similaires

  1. Récupération des droits utilisateur
    Par albanhig dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 18/05/2007, 17h10
  2. utilisation des commandes shell dans un programme C
    Par rasgueados dans le forum Linux
    Réponses: 15
    Dernier message: 03/08/2006, 17h25
  3. Gerer des droits utilisateurs ?
    Par RR instinct dans le forum Langage
    Réponses: 8
    Dernier message: 01/08/2006, 15h10
  4. gestion des droits utilisateurs struts
    Par ijklm dans le forum Struts 1
    Réponses: 1
    Dernier message: 18/05/2006, 19h17
  5. Utiliser MySqlAdmin avec des droits utilisateurs sur XP
    Par thorgal85 dans le forum Outils
    Réponses: 2
    Dernier message: 18/03/2005, 12h19

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