CREATE
, CONNECT
, and TEMPORARY
privileges on the database to myuser
but you haven't granted SELECT
and INSERT
table privileges yet. You'll need something like:GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO myuser;
In addition you need privileges on sequences if you have any serial columns or other column defaults drawing from sequences. Generally, the USAGE
privilege is be enough for INSERT
operations to work, but since you asked to "give all rights"
:GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO myuser;
You will probably want to grant DEFAULT PRIVILEGES
, too. So your administrator
can access future objects automatically, too.Can be done per schema:
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON TABLES TO administrator;
If you omit the schema, it applies to the whole database:ALTER DEFAULT PRIVILEGES GRANT ALL ON TABLES TO administrator;
Only applies to objects created by the role specified (defaulting to the role that executes this command):ALTER DEFAULT PRIVILEGES FOR staff GRANT IN SCHEMA public ... ;
Available since PostgreSQL 9.0.Don't forget to
GRANT
privileges on SEQUENCES
in addition if you have any. (For instance as source for default values in a serial column.)
No comments:
Post a Comment