Ser*_*gei 5 postgresql permissions alter-database
我正在尝试设置一个“部署”用户,除了选择、更新、插入和删除记录之外,它还可以在现有数据库上创建和更改表。
这是我到目前为止所尝试过的:
-- Create deployment user
CREATE ROLE deploy_user WITH LOGIN PASSWORD 'deploy_user';
-- Grant connect and create
GRANT CONNECT, CREATE ON DATABASE my_database TO deploy_user;
-- Grant create schema privilege
ALTER ROLE deploy_user CREATEDB;
-- Change db owner to deployment user
ALTER DATABASE my_database OWNER TO deploy_user;
-- Grant CRUD operations
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT INSERT, UPDATE, DELETE ON TABLES TO deploy_user;
Run Code Online (Sandbox Code Playgroud)
上述补助金均无效。我最终得到的是一个可以登录的用户,但仅此而已。我无法在任何表上选择、插入、更新、删除。我也无法更改架构。
有人可以帮忙吗?
您至少需要在架构中提供 CREATE 权限:
GRANT CREATE ON SCHEMA public TO deploy_user;
Run Code Online (Sandbox Code Playgroud)
或全部:
GRANT ALL PRIVILEGES ON SCHEMA public TO deploy_user;
Run Code Online (Sandbox Code Playgroud)
请参阅http://www.postgresql.org/docs/9.4/static/sql-grant.html上的手册
归档时间: |
|
查看次数: |
17417 次 |
最近记录: |