Most tutorials to setup odoo ERP create a superuser role for the web app user, which is odoo everywhere too, except in the documentation where it is said:
For the database management screen to be completely non-functional, the PostgreSQL user needs to be created with no-createdb and the database must be owned by a different PostgreSQL user.
Warning: the PostgreSQL user must not be a superuser
But I don't manage to find what are the minimal roles required in order to fulfil the minimum rights principle for day-to-day role, so excluding administration (updating, adding modules).
Any tutorial that recommends using a superuser is untrustworthy.
To create a role
odoothat can create anything it wants in databasemydb, you could connect tomydband run:The creation of a separate schema for your application objects is not absolutely necessary, but a good idea in my opinion.