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

Autres SGBD Discussion :

[Sécurité] Utilisateur géré par le serveur BDD ou dans la table relationnelle ?


Sujet :

Autres SGBD

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 12
    Points : 11
    Points
    11
    Par défaut [Sécurité] Utilisateur géré par le serveur BDD ou dans la table relationnelle ?
    Bonjour,

    Je me pose une question de choix technique/logique/applicatif. J'ai un intranet celui-ci à plusieurs utilisateurs, vaut il mieux gérer ses utilisateurs dans la base de donnée avec leur mot de passe et login ou plutôt du coté d'une table relationnel?
    En sachant qu'il peut avoir X utilisateurs se connectant à cette base et que dans tout les cas le mot de passe est crypté.
    Pour ma part je ne sais pas si mon choix à été bon jusque maintenant mais je géré toujours les utilisateurs dans une table relationnel, je n’arrive pas à voir si y a des avantages ou des contraintes suivant l'une ou l'autre des méthodes.


    Merci de m'éclaircir.

  2. #2
    Membre habitué
    Inscrit en
    Mai 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2006
    Messages : 139
    Points : 147
    Points
    147
    Par défaut
    Quand tu parles de gérer les utilisateurs dans la base de données, c'est à dire affecter un utilisateur MySQL à chaque utilisateur de l'application ?

    Si c'est cela, je ne crois pas que ce soit judicieux. Il vaut mieux que tu conserves ton mode de fonctionnement actuel : une table utilisateur qui contient l'ensemble des utilisateurs ayant accès à l'application.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 12
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par gk14fire
    Quand tu parles de gérer les utilisateurs dans la base de données, c'est à dire affecter un utilisateur MySQL à chaque utilisateur de l'application ?
    Oui

    Bah personnellement j'ai le même avis que toi, seulement pour le client ca lui semble pas normal limite une grosse lacune de connaissance de ma part, à savoir que c'est une application pour le ministère de la défense.

    Ce que j'aimerai c'est avoir les avis des personnes ayant utilisé l'une ou l'autre des méthodes et pourquoi, je voudrais leur fournir une explication concrète qui tienne la route et pas seulement un parce que .

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 780
    Points
    30 780
    Par défaut
    D'un point de vue de sécurité, il est préférable en effet d'affecter un utilisateur SGBD par personne se connectant ou au moins gérer des profils différents de manière que tous les utilisateurs n'aient pas les mêmes privilèges sur tous les objets de la base de données.

    Ce que j'avais fait dans une ancienne application, c'était un système à plusieurs niveaux :
    • Une table des utilisateurs, accessible en lecture seule à un utilisateur générique, donnant le profil de l'utilisateur
    • A l'ouverture de l'application, saisie des identifiants de l'utilisateur,
      vérification des identifiants à l'aide de la session SGBD générique.
    • Si l'identifiant est reconnu, ouverture d'une session SGBD avec le profil de l'utilisateur pour la suite des opérations.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 12
    Points : 11
    Points
    11
    Par défaut
    Merci pour vos réponses, mais un plus gros débat m'enchanterai un peu plus

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Août 2002
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 104
    Points : 128
    Points
    128
    Par défaut
    bonjour,

    Laisser la base se charger de l'identification des utilisateurs, ça peut être intéressant du point de vue de la sécurité, mais ça semble franchement horrible question maintenance ... surtout pour un intranet (avec un paquet d'utilisateurs). Sans compter qu'il faut un admin de base de donnée pour administrer les utilisateur de l'appli : c'est légèrment disproportionné

    L'utilisation d'une table est plus simple et plus logique (à mon goût). On peut avoir le même niveau de sécurité : pas d'accès direct à la table des utilisateur, utilisation de procédure qui prend en paramètre le couple login + mdp (crypté ? ou hash ?) qui retourne un boolean.


    Sinon, il reste toujours la sécurité intégrée géré par SQL Serveur avec les comptes windows, mais c'est avec SQL Serveur

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Points : 1 745
    Points
    1 745
    Par défaut sécurité de base de données & utilisateurs.
    Il faut savoir que le LOGIN de bases de données ne correspond pas à un utilisateur mais à une application qui accède à la base.
    Ensuite, le USER permet d'affecter des droits sur les tables en fonction du rôle affecté au login dans l'application. Il peut y avoir un LOGIN qui a le droit de modifier et un login qui n'a que le droit de lire. Par conséquent, le USER du premier login aura le droit de modifier, le second USER aura le droit de lire.

Discussions similaires

  1. Réponses: 7
    Dernier message: 06/11/2014, 15h14
  2. valeur par defaut d'un champ dans une table
    Par jjacques68 dans le forum Access
    Réponses: 3
    Dernier message: 24/10/2012, 09h59
  3. [AC-2003] rajouter un enregistrement par jour non encore présent dans la table.
    Par yupyupxav dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 18/10/2010, 06h08
  4. Réponses: 2
    Dernier message: 14/07/2009, 08h45
  5. Réponses: 1
    Dernier message: 29/11/2007, 12h22

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