Meine Frage

Meine Frage

Meine Frage

Kann ich die Berechtigungen für einen Benutzer (z. B.: postgres) so festlegen, dass sich dieser Benutzer nur vom lokalen TCP-Host aus anmelden darf, nicht aber vom Internet?

Vertrauenswürdige Sockets vs. Passwörter für Remotes

Ich verstehe, dass Sie Postgres initialisieren können, um lokalen Benutzern die Anmeldung ohne Kennwort und Remote-Hosts die Anmeldung mit einem Kennwort zu ermöglichen:

initdb \
            -D "$POSTGRES_DATA_DIR/" \
            --username postgres --pwfile "$PWFILE" \
            --auth-local=trust --auth-host=password

Intranet vs. Internet

Für jedes System, das eine Verbindung über das Internet herstellt, möchte ich einen Benutzer verwenden, der über eine sehr, sehr starke (nicht einprägsame), zufällige 128-Bit-Zeichenfolge verfügt.

Für den lokalen und Intranet-Zugriff hätte ich allerdings lieber einen Benutzernamen und ein Kennwort, die ich mir merken (und eingeben) kann.

Kann ich das tun ... oder muss ich nur einen Benutzer pro System einrichten, der eine Verbindung herstellen darf, mit .pgpassjeweils einem?
(Ich möchte keine Schlüssel in Klartextdateien zwischen Computern teilen.)

Antwort1

Sie haben keine Informationen zu Ihrer PostgreSQL-Version angegeben. Ich gehe davon aus, dass Sie PostgreSQL 12 verwenden.

Kann ich die Berechtigungen für einen Benutzer (z. B. Postgres) so festlegen, dass sich dieser Benutzer nur vom lokalen TCP-Host aus anmelden darf, nicht aber vom Internet?

Ja, verwendenpg_hba.conf. Sie können dies zunächst überhba_fileLaufzeitkonfiguration.

Für den lokalen und Intranet-Zugriff hätte ich allerdings lieber einen Benutzernamen und ein Kennwort, die ich mir merken (und eingeben) kann.

Wenn Sie einen nur lokalen Benutzer hinzufügen möchten, der mit einem Passwort geschützt ist, fügen Sie hinzu

local <database_name> <local-only_user_name> scram-sha-256 

in deinem pg_hba.conf.

Wahrscheinlich möchten Sie den Benutzer zuerst über Folgendes erstellen CREATE ROLE:

CREATE ROLE username LOGIN ENCRYPTED PASSWORD 'insert-your-password-here';

Möglicherweise möchten Sie auch Einträge prüfen hostund aufzeichnen, um sie Ihrer Konfiguration der Intranet- und internetbasierten Authentifizierung hostsslhinzuzufügen .pg_hba.conf

Weitere Informationen finden Sie in den verlinkten Dokumentationen.

verwandte Informationen