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

PostgreSQL给新用户授权select角色

✅ 切换到你的数据库并以超级用户登录(例如 postgres):

admin#localhost: ~$ psql -U postgres -d lily

✅ 创建登录的账号机密吗

lily=> CREATE USER readonly_user WITH PASSWORD 'xxxxxxxxxxx'; 

✅ 确认你授予了这个表的读取权限:

lily=> GRANT SELECT ON actor_codes TO readonly_user;
✅ 如果有多个表要一起授权:
lily=> GRANT SELECT ON ALL TABLES IN SCHEMA public TO readonly_user;

✅ 确保 schema 权限也没问题(你可能已经做过):

lily=> GRANT USAGE ON SCHEMA public TO readonly_user;

🔁 可选:一劳永逸让未来新表也有权限

lily=> ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT SELECT ON TABLES TO readonly_user;

🔍 验证权限是否生效

✅ 重新用 readonly_user 登录测试:
admin#localhost: ~$ psql -U readonly_user -d lily
lily=> SELECT * FROM actor_codes LIMIT 1;cid              |     code      
-------------------------------+---------------sfefesfwsafe| kil/1/acc
(1 row)

如果这样之后还报错,可以检查:

-- 看表归属 schema(假如不是 public,需要改 GRANT 语句里的 schema 名)
lily=> SELECT table_schema, table_name
FROM information_schema.tables
WHERE table_name = 'actor_codes';table_schema | table_name  
--------------+-------------public       | actor_codes
(1 row)

相关文章:

  • 【强化学习】强化学习算法 - 多臂老虎机问题
  • (三)Java数据类型与进制详解
  • 证件阅读机在景区实名制应用场景的方案
  • ModuleNotFoundError: No module named ‘numpy.typing‘
  • WPF之高级绑定技术
  • MySQL核心机制:日志系统、锁机制与事务管理的深度剖析
  • SpringBoot 集成 Ehcache 实现本地缓存
  • 日常知识点之随手问题整理(虚函数 虚函数表 继承的使用场景)
  • C++函数栈帧详解
  • 【MCP】function call与mcp若干问题整理
  • 华泰商会:顺应时代,服务企业赋能行业
  • 修改图像分辨率
  • Scaffold-DbContext详解
  • 计算机视觉注意力机制【一】常用注意力机制整理
  • 从电话到V信语音:一款App实现全场景社交脱身
  • shell-sed
  • AI驱动SEO关键词高效布局
  • 基于Django框架开发的企业级IT资产管理系统
  • 01Introduction
  • 《汽车噪声控制》复习重点
  • 印巴开始互袭军事目标,专家:冲突“螺旋式升级”后果或不可控
  • 上财发布“AI+课程体系”,人工智能如何赋能财经教育?
  • 大四本科生已发14篇SCI论文?重庆大学:成立工作组核实
  • 范志毅跨界归来做青训,探索中国足球人才培养新模式
  • 奥利弗·斯通回顾越战50周年:我们不善于总结历史教训
  • 纪念苏联伟大卫国战争胜利80周年阅兵彩排,解放军仪仗队亮相