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

Outils MySQL Discussion :

des fichiers qui portent les nom des tables


Sujet :

Outils MySQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2006
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 30
    Points : 34
    Points
    34
    Par défaut des fichiers qui portent les nom des tables
    Bonjour,

    Je développe une application qui utilise une base de données MySql.
    Je vais la deployer chez un client, mais je veux pas qu'il puisse connaitre le nombre de tables ni leurs noms (ce qui est possible si tu vois dans C:\Program Files\MySQL\MySQL Server 5.0\data\MaBase).

    Encore pire, tu peux voir meme la syntaxe SQL des vues en ouvrant les fichiers C:\Program Files\MySQL\MySQL Server 5.0\data\MaBase\arc\vue1

    Y a t il une solution pour :
    - soit crypter les noms et le contenus des tables et des vues
    - soit rendre la base dans un seul fichier comme Sql Server ou Access

    Merci

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    331
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 331
    Points : 394
    Points
    394
    Par défaut
    Si je comprends bien, tes tables sont créées avec comme moteur de stockage MyISAM. Si tu n'as pas de contrainte particulière concernant le moteur de stockage de tes tables, tu pourras les créer avec, par exemple, comme moteur de stockage en InnoDB, et ton problème sera résolu.

  3. #3
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 901
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 901
    Points : 6 026
    Points
    6 026
    Par défaut
    Citation Envoyé par mydb_server Voir le message
    Si tu n'as pas de contrainte particulière concernant le moteur de stockage de tes tables, tu pourras les créer avec, par exemple, comme moteur de stockage en InnoDB, et ton problème sera résolu.
    Cette solution ne résoud absolument rien ! Outre le fait que le nom des tables est celui des fichiers FRM, InnoDB induit des contraintes (pas de full-text search par exemple).

    De plus, depuis la version 5 de MySQL, le SGBD dispose et met à disposition des tables système qui contiennent les noms des bases, tables, colonnes, etc...

    En définitive, le problème exposé demeure entier, sans que j'en comprenne l'utilité
    "Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
    -----------------------
    Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
    Usus magister est optimus

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    331
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 331
    Points : 394
    Points
    394
    Par défaut
    Je sais bien que cette solution ne résout pas tout le problème, mais permet au moins de répondre à une partie du besoin de khouja.

  5. #5
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    En gros, avec MySQL ce n'est pas possible, car quel que soit le moteur, la définition des tables est toujours dans un fichier à son nom. Ce qu'il y aurait peut-être de mieux à faire, ce serait de ne pas utiliser un serveur MySQL pleinement installé, mais plutôt un serveur embarqué dans l'application que cette dernière démarrerait directement (pas en tant que service), et avec ses fichiers de données dans les répertoires de l'application elle-même. Ça ferait un bon compromis.

    Au delà de ça, tout avoir dans un unique fichier n'aidera pas vraiment en terme de confidentialité, et ce même pour une autre base que MySQL. Un SGBDR n'est pas fait pour protéger d'un utilisateur ayant un accès à la machine en local avec les pleins pouvoirs. De ce point de vue là, le problème est insoluble, comme celui des systèmes de protection des jeux vidéos, de la copie des fichiers musicaux, etc. La question est plutôt de savoir à quel point on est prêt à se compliquer la vie pour compliquer celle de l'attaquant (qui est aussi, ne le perdons pas de vue, l'utilisateur), et combien ça coute.


    Éventuellement, pourquoi ne pas se tourner plutôt vers SQLite ? Avec peut-être la possibilité de chiffrer son fichier. Où de le modifier pour qu'il le fasse.

    Sinon, utiliser MySQL proxy (ou directement des fonctions dans le code) pour obfusquer les noms des tables et des colonnes, et peut-être chiffrer leur contenu. Et tant qu'à faire ajouter des tables inutiles pour masquer leur nombre réel...
    Je crois que pour avoir oser proposer quelque chose comme ça je mérite un

    Bref, est-ce que ça en vaut vraiment la peine, dans la mesure où ces solutions ne sont pas pour autant à toute épreuve ?

Discussions similaires

  1. Réponses: 13
    Dernier message: 22/04/2009, 16h43
  2. Réponses: 3
    Dernier message: 04/07/2008, 11h07
  3. fonction qui met en liste les noms des fichiers
    Par aliassaf dans le forum Général Python
    Réponses: 2
    Dernier message: 22/06/2006, 11h50
  4. Ecrire les noms des fichiers dans une colonne
    Par REGIMBAL dans le forum Access
    Réponses: 1
    Dernier message: 20/04/2006, 11h29
  5. ShellListView : comment récupérer les noms des fichiers?
    Par Lolo1988 dans le forum Composants VCL
    Réponses: 1
    Dernier message: 11/12/2005, 23h19

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