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

SQL Oracle Discussion :

Parcourir une base de données


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Parcourir une base de données
    Bonjour tout le monde! Alors je vous remet un peu dans le contexte: je suis étudiant (en sécurité) en stage et je suis en train de développer un programme qui doit vérifier qu'aucune modification n'a été faite sur un serveur, aussi bien au niveau des fichiers que de la base de données.

    Le hic vient de la vérif en base. Je connais les bases du SQL, mais très peu le PLSQL. J'aimerai avoir un petit script qui permette de passer en revue toute les tables d'un utilisateur donné, et d'avoir un affichage de type:

    Table: nomtable / Colonne: nomcolonne / Valeur: valeur1
    Table: nomtable / Colonne: nomcolonne / Valeur: valeur2
    etc ...

    Les délimiteurs ne sont pas très importants, c'est surtout le fait d'avoir sur chaque ligne les 3 informations pour faire ensuite du traitement via des regex. Bien que néophyte en PL/SQL, je me suis orienté vers cette solution car c'est celle qui me semble la plus adaptée, mais si vous avez autre chose à proposer, n'hésitez pas =)

    Au passage, je ne cherche pas forcément une solution toute faite, juste une petite aide car ça fait maintenant une semaine que je galère là dessus et j'aimerai avancer...

    Merci d'avance!

  2. #2
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Franchement je ne vois aucun intérêt d'avoir un script qui permettra d'afficher tous les valeurs de tous les colonnes de tous les tables d'une schéma.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Merci pour ta réponse.

    L'intérêt n'est pas de les afficher simplement, mais de les stocker dans un fichier de référence. Ensuite à l'aide d'un cron on lance quotidiennement la reconstruction (affichage de toutes les valeurs) de la base dans un autre fichier. Puis je peux comparer et savoir qu'est ce qui a été modifié par rapport au fichier de référence (tout ça automatisé via des scripts et des regex évidemment).

    Le besoin vient du constat suivant: Il existe un site internet qui est vital mais peu visité (~20 fois par mois). Personne ne s'occupe de savoir si une attaque a été subie, et si oui si il y a eu des modifications sur le site ou en base (backdoor). C'est pour cela que je développe une appli permettant de contacter un admin dès qu'il y a une modification d'un contenu quelconque.

    L'explication est simplifiée, mais en gros c'est ça. Je pourrai bien sûr automatiser la vérification de logs de connexion au lieu du contenu, mais un bon attaquant n'a qu'à effacer ses traces et un backdoor pourra être installé sans que personne ne soit averti...

    Est-ce assez clair? Vois-tu mieux l'intérêt de ma demande?

  4. #4
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Non! Vous est en train d'inventer les fichiers comme moyen de stockage des données là où depuis pas mal des années des bases des données ont été crée pour répondre à ce problème.
    Une base des données Oracle correctement gérée devrait vous permettre de répondre à votre demande. Commencez par lire Database Security Guide

  5. #5
    Invité
    Invité(e)
    Par défaut
    Merci je sais d'où proviens le besoin de base de données, et quel évolution il y a eu...
    Comprenez bien que je ne cherche pas à stocker les informations dans un fichier pour manipuler les données, ce serait assez aberrant. Je souhaite juste développer un soft qui soit indépendant d'Oracle et qui puisse répondre aux besoins que j'ai expliqué. Une solution simple serait de mettre en place des triggers sur les tables critiques du site web, mais cela sous-entend une manip sur Oracle...

    Je dois avouer ne pas bien connaître Oracle, certes. Mais tout ce que je connais (principe ou technique) nécessite une intervention sur Oracle. J'aimerai pouvoir passer les identifiants utilisateur à mon soft qui lui s'occupe de tout. Le but étant aussi de pouvoir réutiliser ce dit-soft sur n'importe quelle base.

    Après, peut être que l'idée de vouloir être avertie d'une modification en base n'est pas un bon principe en sécurité, mais je ne vois alors pas comment répondre aux besoins expliqués ci-dessus...

  6. #6
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Les vues du méta-dictionnaire d'Oracle vous donnent toutes les informations que vous avez besoin: les utilisateurs, tables, colonnes de la base, etc. Ensuite vous devez employer du SQL dynamique pour recherche vos données et les afficher en format souhaité.
    Vous pouvez vous inspirer des méthodes utilisé pour Print_Table et method 4 dynamic sql in pl/sql. Pour une base des données simple et sans types des données LOB ça ferait l'affaire.
    Je continue à penser que c'est un mauvais approché surtout en termes de sécurité!

Discussions similaires

  1. Pb pour parcourir une base de données
    Par Fyv8000 dans le forum VB.NET
    Réponses: 8
    Dernier message: 26/02/2013, 15h49
  2. comment Parcourir une base de données d'images
    Par automa dans le forum Images
    Réponses: 5
    Dernier message: 22/02/2010, 17h40
  3. Comment parcourir une bases de données SQL
    Par DEV-10 dans le forum VB.NET
    Réponses: 18
    Dernier message: 26/03/2008, 18h03
  4. Parcourir une base de données d'images
    Par miss_angel dans le forum Images
    Réponses: 8
    Dernier message: 16/03/2008, 12h46
  5. Réponses: 3
    Dernier message: 19/09/2006, 15h36

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