Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 从角色postgres中撤消数据库上的temp_Postgresql_Permissions_Temp Tables - Fatal编程技术网

Postgresql 从角色postgres中撤消数据库上的temp

Postgresql 从角色postgres中撤消数据库上的temp,postgresql,permissions,temp-tables,Postgresql,Permissions,Temp Tables,我正在尝试在PostgreSQL中创建一个只读用户,我已经这样做了,唯一需要注意的是,我的新只读用户能够创建临时表。怎样??为什么 我特别指出: CREATE ROLE read_access LOGIN; REVOKE CREATE ON SCHEMA public FROM public; GRANT USAGE ON SCHEMA {schema_name} TO read_access; GRANT SELECT ON ALL TABLES IN SCHEMA {schema_na

我正在尝试在PostgreSQL中创建一个只读用户,我已经这样做了,唯一需要注意的是,我的新只读用户能够创建临时表。怎样??为什么

我特别指出:

CREATE ROLE read_access LOGIN;

REVOKE CREATE ON SCHEMA public FROM public;

GRANT USAGE ON SCHEMA {schema_name} TO read_access;

GRANT SELECT ON ALL TABLES IN SCHEMA {schema_name} TO read_access;

ALTER DEFAULT PRIVILEGES IN SCHEMA {schema_name}
   GRANT SELECT ON TABLES TO read_access;

您缺少一个权限:

REVOKE TEMPORARY ON DATABASE {dbname} FROM PUBLIC;

默认情况下,允许每个人自动属于的特殊角色
PUBLIC
,创建临时表。

您缺少一个权限:

REVOKE TEMPORARY ON DATABASE {dbname} FROM PUBLIC;
默认情况下,允许每个人自动属于的特殊角色
PUBLIC
,创建临时表