Skip to main content
Version: Privileged Access Manager 3.0

Работа с PostgreSQL Proxy

Начиная с Indeed PAM 3.0 стало возможно открывать SQL-сессии через PostgreSQL Proxy. Это позволяет просматривать текстовый лог SQL-сессий, благодаря чему обеспечивается более полный контроль над сессиями и упрощается расследование инцидентов.

Настройка клиента СУБД

Часто у клиентов СУБД есть особенность работы: после подключения к серверу БД для выполнения SQL-запросов открывается отдельная сессия. В этом случае в PAM так же создается несколько сессий, что может доставлять неудобства при просмотре текстовых логов.

Чтобы SQL-запросы выполнялись в той же сессии, что и подключение к серверу БД, нужно настроить клиент СУБД. Ниже приведена информация, как это сделать на примере клиента DBeaver.

  1. Откройте DBeaver.
  2. В левой части экрана, в окне Базы данных (Database Navigator) найдите в списке доступных подключений нужный сервер, нажмите на него левой кнопкой мыши и нажмите на клавиатуре F4.
  3. В открывшемся окне перейдите на вкладку Метаданные (Metadata), поставьте флаг Настройки базы <имя сервера> (Datasource <servername> settings).
  4. Для параметра Открывать отдельное соединение для чтения метаданных (Open separate connection for metadata read) укажите опцию Never из выпадающего списка.
  5. Перейдите на вкладку Редактор SQL (SQL Editor).
  6. Для параметра Открывать отдельное соединение для каждого редактора (Open separate connection for each editor) укажите опцию Never из выпадающего списка.
  7. Сохраните изменения нажатием кнопки OK.
  8. Повторите все перечисленные действия для всех ваших серверов БД.

Взаимодействие через SSL

PostgreSQL Proxy может работать с PostgreSQL Server через SSL. Для этого должно быть выполнено два условия:

  • использование SSL включено в PostgreSQL Proxy;
  • использование SSL включено в PostgreSQL Server.

Чтобы проверить, включено ли использование SSL в PostgreSQL Proxy:

  1. Откройте файл конфигурации PostgreSQL Proxy appsettings.json.
  2. Если для параметра SslIsRequired установлено значение true, то использование SSL включено. По умолчанию включено.

Чтобы проверить, включено ли использование SSL в PostgreSQL Server:

  1. Откройте файл конфигурации PostgreSQL Server postgresql.conf.
  2. Если для параметра ssl установлено значение on, а также имеются необходимые сертификаты, то использование SSL включено. По умолчанию отключено.
Предупреждение

Если для одного из указанных компонентов использование SSL включено, а для другого отключено, то соединение установлено не будет, произойдет ошибка подключения.

Возможно взаимодействие без SSL?

Да, взаимодействие между PostgreSQL Proxy и PostgreSQL Server может происходить и без использования SSL. Для этого требуется, чтобы в PostgreSQL Proxy и в PostgreSQL Server использование SSL было отключено.

Указание адреса PostgreSQL Proxy в PAM

  1. Откройте консоль управления Indeed PAM.
  2. Перейдите в раздел КонфигурацияСистемные настройки.
  3. В секции PostgreSQL Proxy заполните поле Адрес PostgreSQL Proxy.

Открытие сессии через PostgreSQL Proxy

Описано в руководстве пользователя, в пункте Подключение к ресурсу через PostgreSQL Proxy.

Просмотр текстовых логов SQL-сессии

Чтобы просмотреть текстовые логи сессии, открытой через PostgreSQL Proxy:

  1. Откройте консоль управления Indeed PAM.
  2. Откройте раздел Активные сессии.
  3. Выберите нужную сессию.
  4. Нажмите Текстовый лог.
Информация

Учитывайте, что разные SQL-клиенты могут по-разному сохранять текст SQL-запросов. Например, psql вырезает комментарии из SQL-запросов, а pgAdmin оставляет.

Текстовый лог, отображаемый в профиле сессии, не обновляется автоматически. Для получения актуального текстового лога, требуется периодически нажимать Обновить.

В текстовом логе не сохраняются результаты запросов.

В текстовый лог попадают только исходящие SQL-запросы (клиент → сервер). Исходящие запросы (сервер → клиент) не попадают.

Ограничения

  • Двухфакторная аутентификация поддерживается только для инсталляций с аутентификацией через RADIUS, где вторым фактором является подтверждение запроса в приложении. Для инсталляций с аутентификацией через PAM параметр Использовать двухфакторную аутентификацию будет игнорироваться, то есть второй фактор запрашиваться не будет, подключение откроется без него.
  • Подтверждение администратором открытия сессии не поддерживается. Отключите параметр Открытие сессии требует подтверждения администратора PAM в разделе ПолитикиСессии, иначе открыть SQL-сессию будет невозможно.
  • Указание причины открытия сессии поддерживается частично. Если включен параметр Требовать указать причину подключения в политике сессии, то пользователям потребуется вводить причину в то же поле, где имя учетной записи. Подробная информация в пункте Подключение к ресурсу через PostgreSQL Proxy.