在CentOS中设置pgAdmin权限,主要通过PostgreSQL用户和角色管理实现,步骤如下:
安装pgAdmin
sudo yum install pgadmin4
创建pgAdmin专用用户
sudo -u postgres psql
CREATE ROLE pgadmin WITH LOGIN PASSWORD 'your_password' CREATEDB CREATEROLE INHERIT;
配置数据库权限
GRANT ALL PRIVILEGES ON DATABASE your_database TO pgadmin;
GRANT SELECT, INSERT, UPDATE ON table_name TO pgadmin;
CREATE ROLE readonly_role WITH LOGIN PASSWORD 'role_password';
GRANT CONNECT ON DATABASE your_database TO readonly_role;
GRANT USAGE ON SCHEMA public TO readonly_role;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO readonly_role;
ALTER ROLE pgadmin ADD MEMBER readonly_role;
通过pgAdmin图形界面管理
验证与安全配置
sudo systemctl restart postgresql
/var/lib/pgsql/data/pg_hba.conf
,添加:host all pgadmin 0.0.0.0/0 md5
,并重启服务。sudo firewall-cmd --add-port=5050/tcp --permanent
sudo firewall-cmd --reload
注意:生产环境中需遵循最小权限原则,避免过度授权。