您的位置:首页 > 文旅 > 旅游 > 网页制作三巨头_高端网站建设公司哪家公司好_全国疫情最新消息今天新增_深圳高端seo公司助力企业

网页制作三巨头_高端网站建设公司哪家公司好_全国疫情最新消息今天新增_深圳高端seo公司助力企业

2025/5/20 10:08:15 来源:https://blog.csdn.net/weixin_45325204/article/details/143377248  浏览:    关键词:网页制作三巨头_高端网站建设公司哪家公司好_全国疫情最新消息今天新增_深圳高端seo公司助力企业
网页制作三巨头_高端网站建设公司哪家公司好_全国疫情最新消息今天新增_深圳高端seo公司助力企业

本文章代码已在pgsql11.22版本上运行且通过,展示页由pgAdmin7.8版本提供


文章目录

    • @[toc]
    • 组角色管理
      • 创建组角色
        • 使用pgadmin创建组角色
        • 使用SQL语句创建角色
      • 查看和修改组角色
        • 使用pgadmin查看和修改组角色
        • 使用sql语句来修改组角色
      • 删除组角色
        • 使用pgadmin删除组角色
        • 使用sql语句删除组角色
    • 角色的各种权限
      • LOGIN(登录)
      • SUPERUSER(超级用户)
      • CREATEDB(创建数据库)
      • CREATEROLE(创建角色)
      • 口令

组角色管理

在pgsql11中,使用组角色的概念管理数据库访问权限。


创建组角色

一个组角色可以看作一组数据库用户,可以把元用户划分为一组管理,为这一组用户统一赋予权限,创建组角色的常见方法有两种:

  • pgAdmin可视化操作(推荐)
  • SQL语句创建
使用pgadmin创建组角色

请添加图片描述

名称是必填的

请添加图片描述

选择【定义】选项卡,输入组角色的密码和连接数限制

请添加图片描述

【权限】选项卡可以设置组角色属性

请添加图片描述

【从属关系】选项卡可以选择一个用户纳入此组角色

请添加图片描述

点击【保存】后,post1已存在

请添加图片描述

使用SQL语句创建角色

创建一个角色组的SQL格式

create ROLE 组角色名称;

创建一个名为post2的组角色

随便通过一个数据库打开查询工具,并创建一个组角色post2

create role post2;

查看和修改组角色

使用pgadmin查看和修改组角色

<右键>post2,点击【属性】

请添加图片描述

可以看到组角色post2的属性内容

请添加图片描述

使用sql语句来修改组角色

角色存在于pg_roles系统表中,用户可以通过此表来修改系统中的角色

select rolname from pg_roles;

请添加图片描述

修改组角色名称的格式为:

alter role 组角色旧名称 rename to 新名称;

修改组角色post1的名称为post3

alter role post1 rename to post3;

查看左侧列表前先刷新一下

请添加图片描述


删除组角色

使用pgadmin删除组角色

请添加图片描述
请添加图片描述

对组角色右键中选择【删除】,然后确定就行了

使用sql语句删除组角色

语法如下:

DROP ROLE 组角色名称;

删除角色post3

DROP ROLE post3;

请添加图片描述


角色的各种权限

一个数据库角色可以有一系列属性,用于定义他的权限以及与客户认证系统的交互,常见的权限如下:

  • LOGIN(登录)
  • SUPERUSER(超级用户)
  • CREATEDB(创建数据库)
  • CREATEROLE(创建角色)
  • 口令

LOGIN(登录)

默认情况下,创建的组角色没有登陆权限,只有具有LOGIN权限的组角色才可以用作数据库连接的初始角色,语法如下:

CREATE ROLE name LOGIN;

例如,创建一个具有登录权限的角色post4

CREATE ROLE post4 LOGIN;

SUPERUSER(超级用户)

超级用户有对数据库操作的最高权限,可以完成对数据库的所有权限检查。保证PostgreSql的安全非常重要,所以建议用户谨慎使用SUPERUSER(超级用户),不要轻易创建超级用户,最好使用非超级用户完成用户的大多数工作

创建超级用户,语法如下:

CREATE ROLE name SUPERUSER;

例如,创建超级用户post5

CREATE ROLE post5 SUPERUSER;

CREATEDB(创建数据库)

想要创建数据库,必须要明确给出该权限(除超级用户),语法如下:

CREATE ROLE name CREATEDB;

例如,创建一个具有创建数据库权限的角色post6

CREATE ROLE post6 CREATEDB;

CREATEROLE(创建角色)

角色想要创建角色,必须明确给出该权限(除超级用户),只能对普通角色进行操作,想操作超级用户,必须拥有超级权限,语法如下:

CREATE ROLE name CREATEROLE;

例如,创建一个具有创建角色权限的角色post7

CREATE ROLE post7 CREATEROLE;

口令

在客户认证方法要求与数据库建立连接时,需要口令权限,常见认证方法包括passwordmd5crypt,语法如下:

CREATE ROLE name 【口令认证方法】 【具体口令】;

例如,创建一个password口令为123456的角色post8

CREATE ROLE post8 PASSWORD '123456';

✏本教程使用md文档制作

📎本文根据原书《PostgreSql11 从入门到精通》(清华大学出版社)第13章总结整理,为提问与解答可以帮助更多人,本博客模拟GitHub的issue方案,所以私信已关,有问题请在评论区直接指正与提问,允许转发、复制或引用本文章,必须遵守开源法则注释来源与作者,感谢您的阅读

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com