8.6. Sécuriser PostgreSQL en limitant l'accès aux utilisateurs locaux authentifiés


PostgreSQL est un système de gestion de base de données (SGBD) objet-relationnel. Dans Red Hat Enterprise Linux, PostgreSQL est fourni par le paquetage postgresql-server.

Vous pouvez réduire les risques d'attaques en configurant l'authentification du client. Le fichier de configuration pg_hba.conf stocké dans le répertoire de données du cluster de bases de données contrôle l'authentification du client. Suivez la procédure pour configurer PostgreSQL pour l'authentification basée sur l'hôte.

Procédure

  1. Installer PostgreSQL :

    # yum install postgresql-server
  2. Initialiser une zone de stockage de la base de données à l'aide de l'une des options suivantes :

    1. Utilisation de l'utilitaire initdb:

      $ initdb -D /home/postgresql/db1/

      La commande initdb avec l'option -D crée le répertoire que vous spécifiez s'il n'existe pas déjà, par exemple /home/postgresql/db1/. Ce répertoire contient alors toutes les données stockées dans la base de données ainsi que le fichier de configuration de l'authentification du client.

    2. Utilisation du script postgresql-setup:

      $ postgresql-setup --initdb

      Par défaut, le script utilise le répertoire /var/lib/pgsql/data/. Ce script aide les administrateurs système à gérer les bases de données en cluster.

  3. Pour permettre à n'importe quel utilisateur local authentifié d'accéder à n'importe quelle base de données avec son nom d'utilisateur, modifiez la ligne suivante dans le fichier pg_hba.conf:

    local   all             all                                     trust

    Cela peut s'avérer problématique lorsque vous utilisez des applications en couches qui créent des utilisateurs de base de données et aucun utilisateur local. Si vous ne souhaitez pas contrôler explicitement tous les noms d'utilisateur du système, supprimez la ligne local du fichier pg_hba.conf.

  4. Redémarrez la base de données pour appliquer les modifications :

    # systemctl restart postgresql

    La commande précédente met à jour la base de données et vérifie également la syntaxe du fichier de configuration.

Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.