pgpro_wrap

pgpro_wrap — скрыть код PL/pgSQL

Синтаксис

pgpro_wrap [-V | --version] [-? | --help]

Описание

pgpro_wrap — утилита командной строки для сокрытия (обфускации) кода PL/pgSQL. Утилита помогает защитить хранимые процедуры и функции от несанкционированных изменений.

Для работы pgpro_wrap требуются библиотеки OpenSSL и zlib.

pgpro_wrap принимает один исходный файл в кодировке UTF-8, скрывает его содержимое и возвращает выходной файл с суффиксом .wrap. В результате код PL/pgSQL становится недоступным для просмотра или прямого редактирования с помощью клиентских программ, таких как pgAdmin, и остаётся скрытым в системном каталоге pg_proc. Выходные файлы при этом могут выполняться обычным образом без каких-либо дополнительных действий.

Чтобы скрыть содержимое исходного файла PL/pgSQL, укажите имя файла:

./pgpro_wrap имя_файла

Утилита создаёт в текущем каталоге выходной файл с именем имя_файла.wrap. Если такой файл уже существует, pgpro_wrap завершает работу с ошибкой, предотвращая случайную перезапись.

Файл со скрытым содержимым можно загрузить на сервер базы данных или добавить в расширение. Сервер автоматически выполняет обратное преобразование кода при создании функции или выполнении скрипта.

Параметры

pgpro_wrap принимает следующие аргументы командной строки:

-V
--version

Вывести версию pgpro_wrap и завершить работу.

-?
--help

Показать справку по pgpro_wrap и завершить работу.

Примечания

Учтите, что скрытый код PL/pgSQL отображается в виде обычного текста в следующих компонентах системы:

Таким образом, pgpro_wrap не следует рассматривать как полноценное средство защиты, поскольку код PL/pgSQL можно просмотреть с помощью указанных средств диагностики.