pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
原文:https://www.postgresql.org/about/news/pgadmin-4-v918-released-3381/ 发布日期:2026-09-17 作者:pgAdmin Development Team
pgAdmin 开发团队宣布发布 pgAdmin 4 v9.18。此版本包含 29 项 bug 修复和新功能,并修复了四个安全漏洞(CVE-2026-86861 至 CVE-2026-86864)。详情请参阅 发布说明。pgAdmin 是 PostgreSQL 的开源图形化管理工具,项目主页为 pgadmin.org。
Ctrl+Alt+B,可通过 toggle_object_explorer 偏好设置修改。'unsafe-inline',并移除 'unsafe-eval'。由于 MUI、React 会注入运行时样式且内联 style 属性无法携带 nonce,style-src 仍保留 'unsafe-inline';开启 DEBUG 时开发包会自动重新加入 'unsafe-eval'。get_user() 过去会在 WSGI 环境缺少值时回退读取请求头中的 WEBSERVER_REMOTE_USER,任何能访问 pgAdmin 的客户端都可能伪造管理员身份。现在只有显式启用、来自受信代理并带可选共享密钥的请求头才会生效,且非 webserver 认证源的账户会被拒绝(CVE-2026-86863)。pg_dump,而是通过不会展开连接字符串的 PGDATABASE 环境变量传递(CVE-2026-86864)。--dbname 导致的同类连接字符串注入,以及密码被导出到 PGPASSWORD 后被重定向的问题(CVE-2026-86862)。save_file 端点存在的检查时序竞态:路径校验后直接 open() 可能跟随攻击者插入的符号链接,将文件写到存储目录之外(CVE-2026-86861)。ALLOWED_LLM_API_URLS 检查的目的地;这属于加固,因为能返回重定向本身要求攻击者已控制允许列表中的主机。Username,避免 libpq 默默以运行 pgAdmin 的操作系统账号认证。UserMixin.is_locked() 语义后导致的登录失败。getNodeAjaxOptions() 共享并发的相同 GET 请求,避免宽表 Columns 选项卡为每一行重复请求 get_types。TABLESPACE pg_default。pg_service.conf 连接时 Password Exec Command 导致的崩溃。servers.json 导入共享服务器时接受 SharedUsername。ProductVersion 尾部多余的引号,并修正 Helm 部署模板中的 existingSecret 路径。SERVER_MODE 时初始化 Kerberos、LDAP、MFA、OAuth2 和 Webserver 认证提供方,让桌面模式继续只使用内部认证。Windows、macOS、Python Wheel、Docker Container、RPM、DEB Package 和源码 tarball 已可从 下载区域 获取。