如何对postgresql中的数据库进行多用户限制
我在一个公开可见的服务器上创建了一个PostgreSQL数据库 有几个用户,但我希望他们中只有2-3人可以访问系统中的数据库。所有人都应该能够读写数据 那么我如何限制其他用户呢?是否可能?默认情况下,连接数据库的权限授予如何对postgresql中的数据库进行多用户限制,postgresql,Postgresql,我在一个公开可见的服务器上创建了一个PostgreSQL数据库 有几个用户,但我希望他们中只有2-3人可以访问系统中的数据库。所有人都应该能够读写数据 那么我如何限制其他用户呢?是否可能?默认情况下,连接数据库的权限授予public角色 所以你需要做的第一件事就是撤销它。要做到这一点,请以超级用户身份登录该数据库(通常是postgres),例如 然后在SQL提示符下运行: revoke connect on database new_database from public; 然后,您需要将权
public
角色
所以你需要做的第一件事就是撤销它。要做到这一点,请以超级用户身份登录该数据库(通常是postgres
),例如
然后在SQL提示符下运行:
revoke connect on database new_database from public;
然后,您需要将权限授予每个用户:
grant connect on database new_database to user_1;
grant connect on database new_database to user_2;
用您创建的数据库的名称替换new_database
您还可以通过pg_hba.conf
控制对服务器的访问,但这有点复杂。有关详细信息,请参阅手册:
grant connect on database new_database to user_1;
grant connect on database new_database to user_2;