Postgresql用户角色管理

Postgresql用户角色管理,第1张

概述PG数据库的登录用户角色是有相互联系的,比起oracle要简单灵活很多。 PG里的登录用户和角色只有一个区别就是是否能登录,即login属性。  1.创建登录用户: CREATE ROLE test LOGIN PASSWORD 'test' NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION; create role 与 cr PG数据库的登录用户和角色是有相互联系的,比起oracle要简单灵活很多。 PG里的登录用户和角色只有一个区别就是是否能登录,即login属性。
1.创建登录用户:
CREATE RolE test LOGIN PASSWORD 'test'  NOSUPERUSER inherit NOCREATEDB NOCREATERolE norEPliCATION;
create role 与 create user 命令是等效的,只是create user 默认是login的,而前者默认是非login的 2.查看系统内用户 psql终端可以用\du或\du+表示 也可查看系统表:select * from pg_roles; 3.应用 登录用户与pg_hba.conf文件中的设置有关,可以设置其以某种方式登录某个主机的某个数据库。 超级用户不受此限制.用户可以设置属性,如ALTER RolE role_name SET enable_indexscan TO off; 可以让这个用户去执行sql时不走索引, 重置:alter role role_name reset xxx; 暂时没发现此用处。 4.角色属性 login,superuser,createdb,createrole,replication,passwod,inherit。 createrole权限可以允许其创建或删除其他普通的用户角色(超级用户除外) replication权限是做流复制的时候用到的一个用户属性,一般单独设定。 passwd在登录时要求指定密码时才会起作用,比如md5或者passwd模式,跟客户端的连接认证方式有关 inherit是用户组对组员的一个继承标志,成员可以继承用户组的权限特性 5.用户组 当很多用户使用时,需要对每一个人都授权是件比较麻烦的事情,用户组就是起到将很多用户拉到一个组里,对这个用户组授权来解决每个用户都需要授权的作用。 创建组用户,一般不让他登录: create role group_name; 增加组用户: grant group_name to role1; grant group_name to role2; 删除组用户 revoke group_name from role1; revoke group_name from role2; 更复杂地,可以设置用户组的组。对于死循环的用户组是不允许的,如a属于b,又包含a 总结

以上是内存溢出为你收集整理的Postgresql用户角色管理全部内容,希望文章能够帮你解决Postgresql用户角色管理所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1178851.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存