Postgres
Create a Group and a User
As a super user, execute the following SQL commands to create a group, a user assigned to that group, and permissions to access a system table.
CREATE USER dot_user PASSWORD '<something secret>';
CREATE GROUP dot_group;
ALTER GROUP dot_group ADD USER dot_user;
-- Grant Postgres' monitor role for meta data
GRANT pg_monitor TO dot_group;Grants Read Access to Data
Then for each schema schema, execute the following three commands to grant read-only access.
-- Grant usage on schema and select on current and future child tables
GRANT USAGE ON SCHEMA "schema" TO GROUP dot_group;
GRANT SELECT ON ALL TABLES IN SCHEMA "schema" TO GROUP dot_group;
ALTER DEFAULT PRIVILEGES IN SCHEMA "schema" GRANT SELECT ON TABLES TO GROUP dot_group;Note: to programmatically generate these three queries for all schemas, you can use the following command. These commands still need to be executed.
Allow Dot IPs
If your organization uses a firewall to manage Postgres access, Dot will only access your Postgres through the following IPs:
5.78.211.110178.105.217.177
Connect via SSH Tunnel
If your database is in a private network or behind a firewall, Dot can connect through an SSH bastion host instead of exposing it directly. In the connection dialog, enable Connect via SSH Tunnel and provide:
SSH Host: your bastion / jump server
SSH Port:
22(default) or a custom portSSH Username: the SSH user
SSH Authentication: SSH password or private key
Dot tunnels the database connection through the bastion, so the database itself never needs a public endpoint.
Last updated