Il existe deux méthodes que vous pouvez utiliser. Toutes deux nécessitent la création d'un utilisateur y une base de données.
Par défaut, psql se connecte à la base de données avec le même nom que l'utilisateur. Il y a donc une convention pour faire en sorte que le "base de données de l'utilisateur" . Et il n'y a aucune raison de rompre cette convention si votre utilisateur n'a besoin que d'une seule base de données. Nous allons utiliser mydatabase
comme nom de la base de données d'exemple.
-
Utilisation de createuser et createdb nous pouvons être explicites quant au nom de la base de données,
$ sudo -u postgres createuser -s $USER
$ createdb mydatabase
$ psql -d mydatabase
Vous devriez probablement l'omettre complètement et laisser toutes les commandes utiliser le nom de l'utilisateur par défaut.
$ sudo -u postgres createuser -s $USER
$ createdb
$ psql
-
Utilisation des commandes d'administration SQL, et connexion avec un mot de passe via TCP
$ sudo -u postgres psql postgres
Et, ensuite, dans le shell psql
CREATE ROLE myuser LOGIN PASSWORD 'mypass';
CREATE DATABASE mydatabase WITH OWNER = myuser;
Ensuite, vous pouvez vous connecter,
$ psql -h localhost -d mydatabase -U myuser -p <port>
Si vous ne connaissez pas le port, vous pouvez toujours l'obtenir en exécutant la commande suivante, en tant qu'élément de l'option postgres
utilisateur,
SHOW port;
Ou,
$ grep "port =" /etc/postgresql/*/main/postgresql.conf
Sidenote : le postgres
utilisateur
Je propose PAS en modifiant le postgres
utilisateur.
- C'est normalement verrouillé par le système d'exploitation. Personne n'est censé se connecter au système d'exploitation en tant qu'utilisateur.
postgres
. Vous êtes censé avoir Root pour vous authentifier en tant que postgres
.
- Il n'est normalement pas protégé par un mot de passe et il est délégué au système d'exploitation hôte. Il s'agit d'un bonne chose . Cela signifie normalement que pour se connecter en tant que
postgres
qui est l'équivalent PostgreSQL de la fonction SA
vous devez avoir un accès en écriture aux fichiers de données sous-jacents. Et, cela signifie que vous pourriez normalement faire des ravages de toute façon.
- En gardant cette option désactivée, vous éliminez le risque d'une attaque par force brute par un super-utilisateur nommé. Cacher et obscurcir le nom du super-utilisateur présente des avantages.
0 votes
Vérifiez ceci article de blog .