PostgreSQL数据库安全加固(八)——用户功能与数据库管理功能分开

我会带着你远行 2024-03-26 11:22 137阅读 0赞

文章目录

  • 前言
  • 一、检查角色权限
  • 二、加固建议
  • 总结

前言

信息系统管理功能包括管理数据库、网络组件、工作站或服务器所需的功能,并且通常需要特权用户访问。如果在可供用户使用的界面上显示有关PostgreSQL管理的管理功能或信息,则可能无意中向用户提供有关DBMS设置的信息。

一、检查角色权限

检查PostgreSQL设置,以验证管理功能是否与用户功能分开。
以数据库管理员(此处显示为“postgres”)身份,列出数据库的所有角色和权限:

  1. # 切换至postgres账户
  2. su - postgres
  3. # 查询角色权限
  4. psql -c "\du"

如果任何非管理角色具有”Superuser”,“Create role”, “Create DB”或”Bypass RLS”权限,则存在安全风险。

二、加固建议

配置PostgreSQL以分离数据库管理和一般用户功能。不要向不需要它的用户授予超级用户,创建角色,创建数据库或绕过rls角色属性。

  1. # 删除管理员权限示例
  2. alter role <username> nosuperuser;

总结

PostgreSQL必须将用户功能(包括用户界面服务)与数据库管理功能分开。

发表评论

表情:
评论列表 (有 0 条评论,137人围观)

还没有评论,来说两句吧...

相关阅读