APIсбечь безопасность
Patroni - великолепный инструмент, использующийся во всех IT-компаниях. Его достоинства описывать можно бесконечно, но стоит отметить API вызовы, которые лично я не использую, но знаю об уязвимостях
Конечно, есть лекарство от этого - обновление до свежих версий, но защита API также поможет избежать лишних смен ролей
Итак, на самом деле все просто: ваш конфигурационный файл должен содержать следующие строкм:
restapi: listen: <listen> connect_address: <connect_address> authentication: username: <username> password: <password> allowlist_include_members: true allowlist: - /32
Да, для кого-то - это не новость, но исходя из документации мне не сразу стало ясно в каком формате все это писать.
Таким образом, команды, опасные для кластера будут выполняться только с серверов, участвующих в кластере, а также указанных в списке allowlist
Стоит также понимать, что это защита от "опасных" команд, например - switchover, следовательно, статус кластера будет доступен всем