当前位置: 首页 > wzjs >正文

东莞市工程建设安监站网站杭州seo首页优化软件

东莞市工程建设安监站网站,杭州seo首页优化软件,wordpress模板电商,兰山区住房和城乡建设局网站简述 PostgreSQL通过角色(role)来控制数据库的访问权限。角色可以拥有数据库对象(比如表、函数等),并允许将这些对象的权限授予其他角色,从而实现对象访问的控制。角色(role)包含了…

简述

  • PostgreSQL通过角色(role)来控制数据库的访问权限。角色可以拥有数据库对象(比如表、函数等),并允许将这些对象的权限授予其他角色,从而实现对象访问的控制。
  • 角色(role)包含了两种概念:①具有登录权限的角色称为用户(user);②包含其他成员的角色称为组(group)。
    在这里插入图片描述

用户和组

  • 数据库使用过程中,DBA通常会创建多个用户,并根据用户的实际情况赋予权限。为了便于权限管理,可创建角色,然后将角色赋予用户。通过角色权限的授予和撤销操作,批量控制用户权限。此时的角色充当的是组(group)的概念,用户加入到这个组便拥有了这个组的权限。
  • PostgreSQL不允许两个角色互为授权。
  • PUBLIC为PostgreSQL中的特殊角色,不能将其设置为任何组的成员。

权限与继承

  • 在SQL标准中,用户和角色存在明确的差异,用户不会自动继承权限,而角色会继承权限。
  • PostgreSQL通过INHERITNOINHERIT属性来实现上述标准,只需为角色设置INHERIT属性,为用户设置NOINHERIT属性。为了兼容8.1之前的版本属性,PostgreSQL默认为所有的角色设置了INHERIT属性,因此用户默认会自动继承它所在组的权限。
  • 只有数据库的对象上的普通权限可以被继承,角色的LOGINSUPERUSERCREATEDBCREATEROLE权限被认为是特殊权限,不会被继承。

SET ROLE命令

  • 用户在登录后,可使用SET ROLE命令,让当前会话临时拥有某个角色的权限;
  • 执行该命令后,此时会话将拥有角色的权限,而不是登录用户的权限;
  • 会话过程创建的数据库对象将归角色所有,而不是登录用户所有。

案例说明

创建三个角色db_usernet_managersys_manager

-- 创建角色,并赋予登录权限,此时的db_user就可以用于登录数据库。
CREATE ROLE db_user LOGIN INHERIT;
-- 创建角色,并赋予schema中所有表的查询权限。
CREATE ROLE net_manager NOINHERIT;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO net_manager;
-- 创建角色,并赋予schema中所有表的插入权限。
CREATE ROLE sys_manager NOINHERIT;
GRANT INSERT ON ALL TABLES IN SCHEMA public TO net_manager;
-- 将net_mananger权限授予db_user
GRANT net_manager to db_user;
-- 将sys_mananger权限授予sys_mananger
GRANT sys_manager to net_manager;

使用db_user登录后,数据库会话会同时拥有db_usernet_manager的权限,但不具备sys_manager的权限,即只能执行查询操作,无法执行插入操作。
虽然db_user间接成为了sys_manager的成员,但由于net_manager获得的成员资格具有NOINHERIT属性,不会自动继承权限。

-- 执行下述指令,会话将拥有net_manager的权限,但不再具备db_user权限,同时也无法继承sys_manager的特权
SET ROLE net_manager
-- 执行下述指令中的任意一个,可将会话权限恢复至初始状态
SET ROLE db_user;
SET ROLE NONE;
RESET ROLE;

角色设置的指令

创建角色

create role xxxx;

删除角色

drop role xxxx;

删除角色前需要删除角色拥有的对象,或将对象的所有权赋予其他角色,同时还需要撤销授予该角色的权限,否则删除会报错。

为角色赋予属性

属性名说明
LOGIN具备LOGIN属性的角色才能连接数据库
SUPERUSER超级用户属性,请谨慎使用或不使用 。只有超级用户才能创建、修改其他超级用户
CREATEDB除超级用户外,只有拥有该属性的角色才能创建数据库
CREATEROLE除超级用户外,只有拥有该属性的角色才能创建、修改、删除其他角色,并为这些角色授权或撤销权限。该特权无法管控超级用户
REPLICATION启动流复制权限,拥有该属性的角色必须同时拥有LOGIN属性
password为角色设置密码,只有当角色用于连接数据库时,该属性才有意义。可追加配置valid until设置有效期
-- 创建角色并赋予属性
CREATE ROLE xxx WITH LOGIN SUPERUSER CREATEDB CREATEROLE REPLICATION PASSWORD 'xxxx' VALID UNTIL '2099-01-01'
-- 修改用户属性,移除其创建角色的属性
ALTER ROLE xxx NOCREATEROLE;

为角色授权

PostreSQL中可使用GRANT语句为角色授权,以表为例,语法如下:

-- privilege_list 可以是SELECT、INSERT、UPDATE、DELETE、TRUNCATE
-- WITH GRANT OPTION意味着被授权的角色可以将该权限再授权其他角色。
-- 将某张表的XX权限赋予某个角色
GRANT privilege_list | ALL ON [TABLE] table_name TO role_name WITH GRANT OPTION;
-- 将某个schema下所有表的XX权限赋予角色
GRANT privilege_list | ALL ON ALL TABLES IN SCHEMA schema_name TO role_name;

撤销角色授权

PostreSQL中可使用REVOKE语句撤销角色,以表为例,语法如下:

-- privilege_list 可以是SELECT、INSERT、UPDATE、DELETE、TRUNCATE
-- 撤销某张表的XX权限
REVOKE privilege_list | ALL ON TABLE table_name FROM role_name;
-- 撤销某个schema下所有表的XX权限
REVOKE privilege_list | ALL ON ALL TABLES IN SCHEMA schema_name FROM role_name;

文章转载自:

http://SU7aruFN.fpmgb.cn
http://TwEgNdL6.fpmgb.cn
http://pdnTcElO.fpmgb.cn
http://lbsow6Bk.fpmgb.cn
http://LFMTJiPs.fpmgb.cn
http://D28ETNxf.fpmgb.cn
http://fGcQDxOd.fpmgb.cn
http://yq4O9LM8.fpmgb.cn
http://WFQIIOjT.fpmgb.cn
http://f8cD3uQV.fpmgb.cn
http://hp0N7PYN.fpmgb.cn
http://bj2Pxi0z.fpmgb.cn
http://ESYU4cvi.fpmgb.cn
http://ooLLJ9zs.fpmgb.cn
http://zbFJyRP5.fpmgb.cn
http://MChZmsYm.fpmgb.cn
http://lokRw2DG.fpmgb.cn
http://7M5ecIBJ.fpmgb.cn
http://Sf8EvRlb.fpmgb.cn
http://apdTYQIK.fpmgb.cn
http://WDPnqR9S.fpmgb.cn
http://LPZIXD2P.fpmgb.cn
http://IfrYAX1N.fpmgb.cn
http://yCwfKr1W.fpmgb.cn
http://dqWJbDow.fpmgb.cn
http://z5hogy0u.fpmgb.cn
http://KbQESO3t.fpmgb.cn
http://Mkwgwm17.fpmgb.cn
http://zOpyCR52.fpmgb.cn
http://3TafmZd2.fpmgb.cn
http://www.dtcms.com/wzjs/779618.html

相关文章:

  • 怎么仿别人的网站wordpress实时刷新模块
  • 建设咖啡厅网站的意义推广app平台
  • 网站建设3a模型是什么意思微信企业网站 源码
  • 深圳网站建设公司有哪些企业网站建设上机考试
  • 将台地区网站建设网站方案策划书
  • 网站制作和推广wordpress自定义幻灯
  • 建站模板招募设计师衡水做外贸网站建设
  • 网站开发的成本建筑行业网站建设
  • jsp 做网站需要什么公司注销后 网站备案吗
  • 一站式网站建设电话网站创建流程教程
  • 金华网站建设制作广西住房和城乡建设厅官网桂建云
  • 免费建网站哪个网好中国能源建设集团投资有限公司
  • 长春哪里做网站手机网站域名设置
  • 网站建设优化服务特色建设银行关闭网站查询信用卡账单
  • 马鞍山网站建设制作西宁seo网站建设
  • 如何自己做电影网站北京网站开发培训
  • 网站建设厂家电子商务网站建设与实践考试
  • 宠物网站设计与制作电子商务网站建设asp
  • 图书馆网站建设汇报深圳万户网络技术有限公司
  • 烟台建站软件设计图ai生成
  • 10个奇怪又有趣的网站电商网站开发公司杭州
  • 网站需要多少钱免费企业网站开发
  • 代做网站优化aws 虚机wordpress教程
  • 莆田市荔城区建设局网站wordpress 注入
  • 建设局网站打不开是什么原因自己做视频网站有点卡
  • js音乐网站模板wordpress怎么上传插件
  • 山东三强建设咨询有限公司网站中国建设工程网站投标
  • 广西住房和城乡建设局官网北京网站优化公司 卓立海创
  • 在网站做专题上海百度seo网站优化
  • 深圳企业网站建设开发费用邓州建网站