我有一个postgres SQL数据库,我创建了一个只读用户,并对现有对象具有读访问权限。我创建了一个视图,现在我需要给予视图的读取权限。一旦我给了视图访问权限,它显示Permission denied for View..
这就是我所做的。
grant select on public."View_Name" to "readonlyuser@test_XXXXXX"
任何帮助都很感激。
我有一个postgres SQL数据库,我创建了一个只读用户,并对现有对象具有读访问权限。我创建了一个视图,现在我需要给予视图的读取权限。一旦我给了视图访问权限,它显示Permission denied for View..
这就是我所做的。
grant select on public."View_Name" to "readonlyuser@test_XXXXXX"
任何帮助都很感激。
1条答案
按热度按时间relj7zay1#
是否在 * 授予
readonlyuser
权限后 * 创建视图?如果是这样,它就不享有与其他意见相同的权利。这是由于
GRANT... ON
的意思是“存在的视图”。权限保留在PostgreSQL中的项目上。如果删除某个对象,则该对象的所有权限都将丢失。即使您随后创建了具有相同名称的对象,它仍然是独特的,并且具有默认权限,因为它是一个单独的对象。我尝试了下面的查询,它为我工作:
在此之后,使用此
readonly
用户登录数据库并尝试选择视图。要包含将来创建的视图,可以用途: