centos

centos中pgadmin权限设置方法

小樊
49
2025-08-26 22:20:07
栏目: 智能运维

在CentOS中设置pgAdmin权限,主要通过PostgreSQL用户和角色管理实现,步骤如下:

  1. 安装pgAdmin

    sudo yum install pgadmin4  
    
  2. 创建pgAdmin专用用户

    sudo -u postgres psql  
    CREATE ROLE pgadmin WITH LOGIN PASSWORD 'your_password' CREATEDB CREATEROLE INHERIT;  
    
  3. 配置数据库权限

    • 数据库级别
      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;  
      
  4. 通过pgAdmin图形界面管理

    • 登录pgAdmin后,右键“登录名”→“创建”→“登录”,设置用户名、密码及权限(如勾选“超级用户”)。
    • 右键“服务器”→“属性”→“权限”,可编辑角色对服务器的访问权限。
  5. 验证与安全配置

    • 重启PostgreSQL服务:
      sudo systemctl restart postgresql  
      
    • 若需远程访问,修改/var/lib/pgsql/data/pg_hba.conf,添加:
      host all pgadmin 0.0.0.0/0 md5,并重启服务。
    • 配置防火墙允许pgAdmin端口(默认5050):
      sudo firewall-cmd --add-port=5050/tcp --permanent  
      sudo firewall-cmd --reload  
      

注意:生产环境中需遵循最小权限原则,避免过度授权。

0
看了该问题的人还看了