Skip to content

PasswordExecCommand from servers.json ignored in Server mode since pgAdmin 9.15 (works in 9.14) #10114

Description

@krook1024

Please note that security bugs or issues should be reported to security@pgadmin.org.

Describe the bug

PasswordExecCommand in servers.json appears to be ignored in Server mode starting with pgAdmin4 9.15.
The same setup works correctly in 9.14, and is still broken in 9.16.

This affects shared server definitions imported from servers.json: pgAdmin does not execute the configured PasswordExecCommand, so the password is not resolved as expected.

To Reproduce

  1. Run pgAdmin4 in Server mode using container image 9.15 (also reproducible in 9.16).
  2. Import shared server definitions from servers.json containing PasswordExecCommand.
  3. Ensure server-pass execution is explicitly enabled via environment variables:
    • PGADMIN_CONFIG_SERVER_MODE=True
    • PGADMIN_CONFIG_ENABLE_SERVER_PASS_EXEC_CMD=True
  4. Open the imported shared server and attempt to connect.
  5. Observe that PasswordExecCommand is ignored (password is not fetched/executed).

Control check:
6. Repeat the same setup with pgAdmin4 9.14.
7. Observe expected behavior: PasswordExecCommand works.

Expected behavior

In Server mode, for shared servers imported from servers.json, pgAdmin should execute PasswordExecCommand when PGADMIN_CONFIG_ENABLE_SERVER_PASS_EXEC_CMD=True, as in version 9.14.

Error message

No clear UI error message specific to PasswordExecCommand; behavior suggests the command is silently ignored.

Screenshots

Can be provided if needed.

Desktop (please complete the following information):

  • OS: Linux (containerized deployment)
  • pgAdmin version: 9.15 (broken), 9.16 (broken), 9.14 (working)
  • Mode: Server
  • Browser (if running in server mode): Chrome (also reproducible independently of browser)
  • Package type: Container

Additional context

I explicitly tried forcing:

  • PGADMIN_CONFIG_SERVER_MODE=True
  • PGADMIN_CONFIG_ENABLE_SERVER_PASS_EXEC_CMD=True

Example env snippet used:

- name: PGADMIN_CONFIG_ENABLE_SERVER_PASS_EXEC_CMD
  value: "True"
- name: PGADMIN_CONFIG_SERVER_MODE
  value: "True"

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions