小编mik*_*ate的帖子

创建的用户无需任何授权即可访问 PostgreSQL 中的所有数据库

我一定在设置 PostgreSQL 方面遗漏了一些东西。我想做的是创建多个相互隔离的数据库和用户,以便特定用户只能访问我指定的数据库。但是,据我所知,任何创建的用户都可以访问所有数据库,而无需获得任何特定授权。

这是我在 Ubuntu Server 12.04 上所做的:

  1. apt-get 安装 postgresql
  2. sudo -u postgres createuser -DRSP mike1(指定新用户的密码)
  3. sudo -u postgres createdb data1
  4. psql -h localhost -U mike1 data1(指定用户mike1登录的密码)

似乎新用户“mike1”连接到数据库“data1”并创建表等没有问题。这根本没有运行任何 GRANT 命令(“data1”的所有者是“postgres”,因为我没有指定所有者在第 3 步)。这真的是它应该如何工作吗?

我想要做的是授予 mike1 对 data1 的完全访问权限,然后对更多用户和数据库重复此操作,确保用户只能访问我选择的一个(或可能几个)数据库。

postgresql permissions

55
推荐指数
2
解决办法
6万
查看次数

标签 统计

permissions ×1

postgresql ×1