Pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter, inscrivez-vous gratuitement !

 

  1. #1
    Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    octobre 2016
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Conseil

    Informations forums :
    Inscription : octobre 2016
    Messages : 98
    Points : 55
    Points
    55

    Par défaut Droit nécessaire pour la lecture de pg_stat_activity

    bonjour
    J'ai une base de données Postgresql 9.1 j’utilise Toujours le privilège super-utilisateur pour interroger la vue pg_stat_activity , je peux tout voir travers
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select * from pg_stat_activity
    Cependant, est-il possible d'obtenir le même résultat sans être connecté en tant que superutilisateur?

    En faite le but c'est qu'un des Equipe infra (supervision) soit autonome dans la partie supervision Tout ça bien sur en concevant notre stratégie de sécurité

    Quel privilège / rôle devrais-je accorde ?

    merci pour vos aides

  2. #2
    Membre expert
    Avatar de alassanediakite
    Homme Profil pro
    Recherche, formation, développement
    Inscrit en
    août 2006
    Messages
    1 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Mali

    Informations professionnelles :
    Activité : Recherche, formation, développement

    Informations forums :
    Inscription : août 2006
    Messages : 1 530
    Points : 3 286
    Points
    3 286
    Billets dans le blog
    8

    Par défaut

    Salut
    La solution avec l'option SECURITY DEFINER qui permet une exécution d'une fonction avec le droit du créateur.
    Tu crée une fonction avec l'option SECURITY DEFINER de la manière suivante...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    create function e2() returns setof pg_stat_activity
    as
    $$select * from pg_stat_activity;$$ language sql SECURITY DEFINER
    ensuite il suffit de lancer des select comme suite...
    @+
    Le monde est trop bien programmé pour être l’œuvre du hasard…
    Mon produit pour la gestion d'école: www.logicoles.com

  3. #3
    Rédacteur
    Avatar de SQLpro
    Homme Profil pro
    Expert SGBDR & SQL, spécialiste Microsoft SQL Server
    Inscrit en
    mai 2002
    Messages
    18 071
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert SGBDR & SQL, spécialiste Microsoft SQL Server
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 18 071
    Points : 42 276
    Points
    42 276

    Par défaut

    un simple GRANT SELECT ne marche pas ?
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

  4. #4
    Membre expert
    Avatar de alassanediakite
    Homme Profil pro
    Recherche, formation, développement
    Inscrit en
    août 2006
    Messages
    1 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Mali

    Informations professionnelles :
    Activité : Recherche, formation, développement

    Informations forums :
    Inscription : août 2006
    Messages : 1 530
    Points : 3 286
    Points
    3 286
    Billets dans le blog
    8

    Par défaut

    Salut
    Citation Envoyé par SQLpro Voir le message
    un simple GRANT SELECT ne marche pas ?
    Tu as raison
    En fait même pas la peine.
    Voici la ddl de la vue...
    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
    CREATE OR REPLACE VIEW pg_stat_activity AS 
     SELECT s.datid,
        d.datname,
        s.pid,
        s.usesysid,
        u.rolname AS usename,
        s.application_name,
        s.client_addr,
        s.client_hostname,
        s.client_port,
        s.backend_start,
        s.xact_start,
        s.query_start,
        s.state_change,
        s.waiting,
        s.state,
        s.backend_xid,
        s.backend_xmin,
        s.query
       FROM pg_database d,
        pg_stat_get_activity(NULL::integer) s(datid, pid, usesysid, application_name, state, query, waiting, xact_start, query_start, backend_start, state_change, client_addr, client_hostname, client_port, backend_xid, backend_xmin),
        pg_authid u
      WHERE s.datid = d.oid AND s.usesysid = u.oid;
     
    ALTER TABLE pg_stat_activity
      OWNER TO postgres;
    GRANT SELECT ON TABLE pg_stat_activity TO public;
    REVOKE ALL ON TABLE pg_stat_activity FROM postgres;
    on voit qu'elle a un statut PUBLIC. Donc tout le monde peut voir sont contenu.
    Je croyais avoir à faire à une table système accessible uniquement par les supers users

    @+
    Le monde est trop bien programmé pour être l’œuvre du hasard…
    Mon produit pour la gestion d'école: www.logicoles.com

Discussions similaires

  1. [SP-2013] Droits nécessaires pour télécharger des docs
    Par rigol'man dans le forum SharePoint
    Réponses: 6
    Dernier message: 26/07/2016, 15h10
  2. [Install] Droits Oracle nécessaire pour installation Repository Data Integrator et/ou B0
    Par Galouda dans le forum Administration-Migration
    Réponses: 2
    Dernier message: 25/04/2009, 15h16
  3. Droits nécessaires pour SHOW TABLE STATUS
    Par max-mag dans le forum SQL Procédural
    Réponses: 0
    Dernier message: 30/10/2007, 12h03
  4. droits nécessaires pour faire un LOAD DATA INFILE
    Par Peanut dans le forum Administration
    Réponses: 11
    Dernier message: 14/06/2007, 17h03
  5. BULK INSERT : Droits nécessaires pour l'utilisation
    Par JYves dans le forum MS SQL-Server
    Réponses: 4
    Dernier message: 22/11/2005, 10h35

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