Create a read-only user in PostgreSQL

To create a read-only user in PostgreSQL, you can follow these steps:

  1. Connect to your PostgreSQL database as a user with sufficient privileges, such as the superuser or a user with the CREATEROLE privilege.

  2. Open a SQL client or a terminal and execute the following SQL statement to create a new user.

    Replace 'password' with the desired password for the read-only user:

CREATE USER readonly_user WITH PASSWORD 'password';
  1. Grant the necessary privileges to the read-only user. In this case, we want the user to have only read access to specific tables. Execute the following SQL statement to grant SELECT privileges on the desired tables, Replace table_name with the name of the table you want to grant read access to. Repeat this step for each table you want to include:

GRANT SELECT ON table_name TO readonly_user;
  1. Finally, you can create credentials with the new read-only user to test the access. The read-only user should be able to connect to the database and perform SELECT queries on the granted tables but will not have permission to modify the data.

Last updated