PostgreSQL中怎么实现用户和权限管理

今天就跟大家聊聊有关PostgreSQL 中怎么实现用户和权限管理,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

创新互联建站主要从事网站设计、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务沙坪坝,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220

创建用户

CREATE ROLE rolename;
CREATE USER username;

注:CREATE USER和CREATE ROLE的区别在于,CREATE USER指令创建的用户默认是有登录权限的,而CREATE ROLE没有。

创建用户时设定用户权限属性

基本语法格式 CREATE ROLE role_name WITH optional_permissions;

示例:在创建用户时设定登录权限。
CREATE ROLE username WITH LOGIN;

注:可以通过\h CREATE ROLE指令查看全部可设置的管理权限

修改用户权限属性

修改权限的命令格式 ALTER ROLE username WITH attribute_options;

例如:可通过以下方式禁止用户登录
ALTER ROLE username WITH NOLOGIN;

设置访问权限

语法格式如下: GRANT permission_type ON table_name TO role_name;

示例:
GRANT UPDATE ON demo TO demo_role; --赋予demo_role demo表的update权限
GRANT SELECT ON ALL TABLES IN SCHEMA PUBLIC to demo_role; --赋予demo_role所有表的SELECT权限

特殊符号:ALL代表所访问权限,PUBLIC代表所有用户
GRANT ALL ON demo TO demo_role; --赋给用户所有权限
GRANT SELECT ON demo TO PUBLIC; --将SELECT权限赋给所有用户

注:\z或\dp指令显示用户访问权限。
	\h GRANT显示所有可设置的访问权限

撤销用户访问权限

语法格式如下: REVOKE permission_type ON table_name FROM user_name; 其中permission_type和table_name含义与GRANT指令中相同。

用户组 在postgres中用户实际上是role,同时组也是role。 包含其他role的role就是组。

创建组 示例: CREATE ROLE temporary_users; GRANT temporary_users TO demo_role; GRANT temporary_users TO test_user;

切换ROLE SET ROLE role_name; --切换到role_name用户 RESET ROLE; --切换回最初的role

INHERIT权限:该属性使组成员拥有组的所有权限 ALTER ROLE test_user INHERIT;

删除用户和组

删除用户和组很简单:

DROP ROLE role_name;
DROP ROLE IF EXISTS role_name;

看完上述内容,你们对PostgreSQL 中怎么实现用户和权限管理有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。

当前标题:PostgreSQL中怎么实现用户和权限管理
当前网址:https://www.cdcxhl.com/article2/psjjic.html

成都网站建设公司_创新互联,为您提供网站收录网页设计公司全网营销推广搜索引擎优化定制开发服务器托管

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

手机网站建设