So far, we have configured bind addresses and we have told PostgreSQL which means of authentication to use for which IP ranges. Up until now, the configuration has been purely network-related.
In the next step, we can shift our attention to permissions at the instance level. The most important thing to know is if users in PostgreSQL exist at the instance level. If we create a user, it is not just visible inside one database; it can be seen by all the databases. A user might have permissions to access just a single database, but users are essentially created at the instance level.
To those of you who are new to PostgreSQL, there is one more thing you should keep in mind: users and roles are the same thing. ...