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

【pg学习】-账号管理

一、概念

1.用户

用户是具有登录权限的角色,默认拥有登录数据库的权限。用户可以执行数据库操作,如查询、插入、更新等‌。

2.角色

角色是一系列相关权限的集合,可以将角色赋给多个用户,共享相同的权限‌。

二、实操

--创建只读账户
CREATE USER readonly_user WITH PASSWORD 'your_password';
--授予只读用户访问数据库的权限
GRANT CONNECT ON DATABASE your_database TO readonly_user;
--授予public权限
GRANT USAGE ON SCHEMA public TO readonly_user;
--授予只读权限
GRANT SELECT ON ALL TABLES IN SCHEMA public TO readonly_user;
--禁止修改权限 撤销 "readonly_user" 在 "public" 模式下所有表的所有权限
REVOKE ALL PRIVILEGES ON ALL TABLES IN SCHEMA public FROM readonly_user;CREATE USER readonly_users WITH PASSWORD 'readonly';
GRANT CONNECT ON DATABASE tpm TO readonly_users;
GRANT USAGE ON SCHEMA public TO readonly_users;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO readonly_users;--给单表新增查询权限
GRANT SELECT ON table_name TO readonly_users;--查看用户
select *
from pg_user;
--查看特定用户的权限
SELECT rolname, rolsuper, rolinherit, rolcreaterole, rolcreatedb, rolcanlogin, rolreplication
FROM pg_roles;
--查看用户的数据库访问权限
SELECT * FROM pg_catalog.pg_roles r
JOIN pg_catalog.pg_auth_members m ON (r.oid = m.roleid)
JOIN pg_catalog.pg_roles mr ON (m.member = mr.oid)
WHERE mr.rolname = 'readonly_users';--查看用户的表和列权限
SELECT * FROM information_schema.role_table_grants WHERE grantee = 'your_username';
SELECT * FROM information_schema.role_usage_grants WHERE grantee = 'your_username';
SELECT * FROM information_schema.role_column_grants WHERE grantee = 'your_username';

相关文章:

  • 力扣刷题Day 61:子集(78)
  • 算法分析·回溯法
  • Java高频面试之并发编程-23
  • 使用u盘重装银河麒麟操作系统
  • OC—UI学习-1
  • 在 Ubuntu 22.04 LTS 上离线安装 Docker
  • Gerapy二次开发:在Ubuntu服务器中利用pyenv+supervisor实现项目部署
  • zabbix6.x 监控mysql数据库
  • 力扣经典算法篇-16-最长公共前缀(顺序查找法,二分查找法,分治算法)
  • 深度学习入门:从零搭建你的第一个神经网络
  • React---day3
  • LNMP 架构部署
  • Django 中的路由系统
  • 实例与选项对象
  • 电子电路:电路设计都需要哪些公式?【电子电路设计常用公式总结】
  • 8.7 基于EAP-AKA的订阅转移
  • 性能诊断工具AWR配置策略与报告内容解析
  • 基于stm32LORA无线抄表系统仿真
  • 签约!京东云与契约锁达成战略合作,携手共推全程数智化解决方案
  • 用 Python 构建跨平台前端界面:深入解读 Flet 库
  • 简单网站设计模板/页面优化算法
  • c net做的网站/外贸推广引流
  • 医疗网站建设方案/上海谷歌seo推广公司
  • 南京哪家公司做网站/免费学生网页制作成品代码
  • 新乡高端网站建设/网上怎么做广告
  • 网站制作真人游戏娱乐平台怎么做/b2b网站免费推广平台