postgresql - 创建仅对一个数据库具有授予权限的用户
问题描述
我想仅授予新用户对一个数据库的读/写权限,因此他无法访问其他数据库。
在我创建新用户后:
sudo -u postgres createuser <username>
该用户获得什么特权?
这就是我所需要的:
GRANT ALL PRIVILEGES ON my_db TO new_user;
只访问一个数据库吗?
做这个的最好方式是什么?
使用 PostgreSQL 10
解决方案
默认情况下,PUBLIC
允许(每个人)连接到所有数据库。因此,您必须撤销该特权并CONNECT
更加明智地分发。
除此之外,您还必须确保每个用户都拥有CREATE
“他的&rdqou;”中的所有模式。数据库和所有表的必要权限,因为数据库本身的权限不足以访问数据库中的对象。
它可能是最简单的解决方案,用于REASSIGN OWNED
授予用户对“他的”中所有对象的所有权。数据库。
推荐阅读
- c# - 一个动作如何处理许多不同的模型类型?
- reactjs - 如何向django数据库发送请求(案例:数据库有foreignKey)
- python - ProgrammingError: SELECT COUNT(*) AS "__count" FROM "product"
- amazon-web-services - 使用 curl 将数据上传到 s3
- mule4 - Mulesoft X12 EDI 837:交换控制号
- python - Python使用openpyxl使用不同的单元格引用更新多个单元格
- c++ - Q_GADGET 中的 Q_GAGDET 的 readOnGadget 未按预期工作
- swift - 如何在透明窗口中更改 NSView 的宽度
- firebase - 应用退出状态时 React Native 事件触发
- mysql - MySQL 查询、子查询、不同、计数、