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

Administration Oracle Discussion :

Savoir si un User Oracle peut lire un fichier sur Unix


Sujet :

Administration Oracle

  1. #1
    Membre du Club
    Profil pro
    None
    Inscrit en
    Avril 2012
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : None

    Informations forums :
    Inscription : Avril 2012
    Messages : 53
    Points : 59
    Points
    59
    Par défaut Savoir si un User Oracle peut lire un fichier sur Unix
    Bonjour,

    J'aimerai savoir comment je peux savoir si un user oracle peut lire dans un fichier unix.

    Je vous remercie d'avance

  2. #2
    Membre confirmé
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2007
    Messages
    419
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Novembre 2007
    Messages : 419
    Points : 616
    Points
    616
    Par défaut
    bonsoir,
    tu ne te serais pas trompé de forum par hasard?
    tu regardes les droits sur le fichier d'abord (si tu as accès c'est déjà bon signe)
    puis à quel(s) groupe(s) appartient le user (/etc/groups par exemple)

  3. #3
    Membre expérimenté
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Points : 1 717
    Points
    1 717
    Billets dans le blog
    6
    Par défaut
    Si tu veux lire un fichier qui se trouve dans le serveur de la base de données avec un utilisateur oracle, tu renseigne le paramètre utl_file_dir.
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

  4. #4
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 460
    Points : 8 074
    Points
    8 074
    Par défaut
    Je n'ai pas l'impression que le demandeur initial suive la question, mais à toutes fins utiles...

    Un utilisateur connecté à la base Oracle peut accéder à des répertoires du système d'exploitation (on ne peut pas descendre au niveau du fichier) par deux moyens :
    - la paramètre d'instance UTL_FILE_DIR (comme mentionné par Islamov2000), mais dont l'usage est déconseillé, car on ne peut pas choisir qui accèdera au répertoire désigné
    - le mécanisme des objets logiques DIRECTORY.

    Concernant les objets DIRECTORY, le droit d'accès à un répertoire peut être donné à un utilisateur soit directement, soit par l'entremise d'un rôle.

    Cela fait donc 3 situations à identifier.
    Je recherche ici les répertoires de l'OS auxquels SCOTT à accès (sans préciser si c'est un accès READ ou WRITE, mais on pourrait l'ajouter).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    set linesize 160 
    col repertoire     format a20 
    col chemin        format a50 
    col utilisateur format a20 
    col chaine        format a50 
     
     
    SELECT repertoire, chemin, utilisateur, chaine 
    FROM   (SELECT connect_by_root nom_rep                             AS repertoire, 
                   connect_by_root chemin                                AS chemin, 
                   grantee                                             AS utilisateur, 
                   ltrim(sys_connect_by_path(grantee, ' -> '), ' -> ') AS chaine 
            FROM   (SELECT DISTINCT grantee, 
                                    table_name        AS nom_rep, 
                                    dd.directory_path AS chemin, 
                                    'REP'             AS nature 
                    FROM   dba_tab_privs tp join dba_directories dd 
                             ON tp.owner = dd.owner AND tp.table_name = dd.directory_name 
                    WHERE  tp.privilege IN ( 'READ', 'WRITE' ) 
                    UNION 
                    SELECT grantee, granted_role, 'BIDON' AS chemin, 'ROLE'  AS nature 
                    FROM   dba_role_privs) 
            START WITH nature = 'REP' 
            CONNECT BY PRIOR grantee = nom_rep 
            UNION 
            SELECT 'param UTL_FILE_DIR' AS repertoire, 
                   sp.value             AS chemin, 
                   u.username           AS utilisateur, 
                   'param UTL_FILE_DIR' AS chaine 
            FROM   dba_users U cross join v$system_parameter2 SP 
            WHERE  SP.name = 'utl_file_dir') 
    WHERE  utilisateur = 'SCOTT';
    Résultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    REPERTOIRE           CHEMIN                                             UTILISATEUR          CHAINE
    -------------------- -------------------------------------------------- -------------------- ------------------------------
    DIRTEST              f:\oracle\demo                                     SCOTT                R1 -> R2 -> R3 -> SCOTT
    SUBDIR               F:\oracle\ora102\demo\schema\order_entry\/2002/Sep SCOTT                SCOTT
    param UTL_FILE_DIR   c:\temp                                            SCOTT                param UTL_FILE_DIR
    Comme on le voit, DIRTEST est accédé à travers une cascade de rôles, SUBDIR est accédé en direct, est c:\temp est accessible via le paramètre UTL_FILE_DIR.
    Consultant / formateur Oracle indépendant
    Certifié OCP 12c, 11g, 10g ; sécurité 11g

    Ma dernière formation Oracle 19c publiée sur Linkedin : https://fr.linkedin.com/learning/oracle-19c-l-administration

Discussions similaires

  1. [WSS3.0]Lire un fichier sur SharePoint en C#
    Par virgul dans le forum SharePoint
    Réponses: 3
    Dernier message: 24/04/2007, 16h03
  2. Est-ce que Windows XP peut lire les fichiers ADPCM ?
    Par beegees dans le forum Windows XP
    Réponses: 1
    Dernier message: 24/11/2006, 23h52
  3. [Upload] Lire un fichier sur le client avant un upload
    Par PedroBD dans le forum Langage
    Réponses: 10
    Dernier message: 26/07/2006, 10h55
  4. lire un fichier sur le serveur
    Par hammag dans le forum Langage
    Réponses: 4
    Dernier message: 25/07/2006, 17h51
  5. Réponses: 6
    Dernier message: 08/04/2005, 03h00

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