Postgresql:角色(用户、组、成员关系、继承)

超级用户:类似于其他系统的sa、root、sysdba

initdb.exe 初始化是建立的第一个superuser 的名字 和 执行initdb.exe 时所用的os帐号相同

第一个superuser的oid=10

superuser是不受postgresq的对象权限系统控制的,可以在系统里做任何事情!危险!!

 

对象的所有者owner:很特殊的角色

  • 对象的权限系统是对象上权限的有限集合,但有些权限是无法grant、revoke的,这就是owner所特性的:owner用户很多普通用户不具备的权利
  • owner权限可以有superuser来转移

 

postgresql自8.1后不再区分用户、组了。统统称之为角色role

  • role是和数据库无关的
  • role就是权限的集合
  • role可以互相交叉、继承、被赋于对象权限

 

特殊的public角色 :属于所有role的公共角色

  • create role role_name [login createdb super iherit ...]
  • create user role_name  等于 create role role_name login
  • drop role
  • grant {all| priviliges} on object to role_name
  • revoke {all| priviliges} on object from role_name
posted on 2009-06-29 11:45  jinzhenshui  阅读(876)  评论(0编辑  收藏  举报