Вышли обновления инструмента для организации процессов защиты, лицензирования и продажи программных продуктов Guardant SLK. Из важных изменений в версии 3.29 (скачать) — доработана логика проверки виртуальных машин (VM) при активации программных ключей; появилась возможность в одном проекте защищать приложения разных типов (Native и .Net); добавлена утилита «Мастер лицензий Guardant» в состав Linux-пакетов (DEB, RPM).
Телеграм-канал Guardant
Здесь всё о защите, лицензировании и управлении продажами ПО https://t.me/guardant_techclub
Подробнее обо всех обновлениях:
Guardant Protection Studio
В одном проекте теперь возможно защищать приложения разных типов (Native и .Net). Для Windows поддерживается защита в едином проекте программ PE (и x86, и x86-64) и .NET (как Framework, так и Core со Standard и 5+).
Имя библиотеки защиты теперь задается по шаблону и автоматически дополняется постфиксом, указывающим на разрядность. Изменение важно учитывать в случаях интеграции Protection Studio в CI/CD процесс сборки.
Добавлена возможность входа по клавише Enter на экране авторизации.
В ОС Windows при выборе секций теперь отдельно подсвечиваются native-приложения, защиту которых выполнить нельзя. Также данные секции стало невозможно добавлять в список защищаемых.
Имя библиотеки защиты теперь задается по шаблону и автоматически дополняется постфиксом, указывающим на разрядность. Изменение важно учитывать в случаях интеграции Protection Studio в CI/CD процесс сборки.
Добавлены опции для сортировки списка защищаемых функций:
* переключатель поиска по подстроке/регулярному выражению,
* сортировка функций при выборе,
* сортировка уже выбранных для защиты функций,
*выделение всех функций комбинацией клавиш Сtrl+A и снятие выделения с помощью Ctrl+Shift+A в окне выбора функций для защиты.
Добавлена проверка на обращение к ключу перед началом процесса защиты. Теперь если для одного из защищаемых файлов в проекте не будет включена опция «Проверка при запуске» и не будет выбрано ни одной функции (native) или метода (.Net) для защиты, то перед стартом процесса защиты будет выдано соответствующее предупреждение.
Добавлена возможность масштабировать интерфейс. Теперь окно утилиты можно растянуть до нужных пропорций и развернуть на весь экран.
Теперь протектор выстраивает структуру каталогов для защищенных файлов аналогично незащищенному проекту. Например, когда структура приложения такая: [main folder: main program [folder: shared library]], то протектор создает нужные подпапки для защищаемых файлов и помещает их туда. Изменить выходную директорию можно для каждого отдельного файла как в графическом интерфейсе утилиты, так и через файл проекта защиты. Каталоги с защищаемыми файлами и подкаталогами можно через графический интерфейс добавлять целиком при помощи простого перетаскивания в окно утилиты (Drag-and-drop).
Оптимизированы:
процесс аутентификации/авторизации
работа консольного режима в Linux
приложения .NET Standard 2.0 и .NET 7.0
UI
Guardant DL
Доработана логика проверки виртуальных машин (VM) при активации программных ключей. Если в программном ключе все компоненты во всех продуктах содержат запрет на работу в VM, то такой ключ не будет активироваться на виртуальных и будет активироваться на физических машинах. При этом, если есть хотя бы один компонент, который разрешено использовать в среде виртуализации, то ключ будет успешно активирован.
Исправлена проблема, которая в некоторых случаях мешала корректной активации программных ключей в Linux при использовании RAID.
Оптимизация механизмов защиты в программных ключах.
Исправлена проблема создания хранилища для программных ключей Guardant DL в ОС RedOS 8 x64 на диске NVMe. Проявлялась в виде ошибки 46, при попытке активировать программный ключ.
Guardant Control Center
В состав Linux-пакетов (DEB, RPM) добавлена утилита «Мастер лицензий Guardant». После установки Control Center можно сразу запустить мастер командой ‘license_wizard’ в терминале.
Оптимизации безопасности сервиса.
Исправлено появление ошибки ‘FEATURE_NOT_FOUND’ если в настройках адресов поиска указан собственный IP.
Для сессий было добавлено разбиение на страницы. В REST API нумерация страниц начинается с единицы. Общее количество элементов возвращается в параметре заголовка ‘X-Total-Count’.
На экран «Ключи» добавлена кнопка ручного обновления данных о текущем состоянии ключей на локальном компьютере, а также о ключах с сетевыми лицензиями на других компьютерах в сети. Это позволяет быстрее получать информацию о новых ключах и о свободном/занятом ресурсе сетевых лицензий.
Исправлена ошибка, при которой функция GrdGetLicenseInfo не находила сетевую лицензию по IP: 127.0.0.1.
Исправлена ошибка интерфейса, при которой компонент с сетевым ресурсом «0» отображался как локальный.
Исправлена ошибка, при которой в интерфейсе могли не отображаться локальные компоненты.
Улучшена скорость получения сетевой лицензии через broadcast (широковещательный поиск).
Оптимизация: при поиске и опросе Guardant Control Center, установленных на других компьютерах в локальной сети, заметно снижена пиковая нагрузка на CPU.
Оптимизировано потребление сетевого трафика между несколькими установками Guardant Control Center на разных компьютерах в локальной сети, при включенном режиме «Поиск удаленных лицензий». Согласно тестовым замерам объем передаваемых данных стал меньше в ~20 раз.
Исправлена ошибка, из-за которой функция «Сетевые лицензии с других серверов в локальной сети» при широковещательном поиске могли обнаруживать не все сервера GCC в локальной сети.
Исправлена проблема, из-за которой сетевые лицензии могли не заниматься, если для поиска используется внешний IP.
В Linux-версии исправлена ошибка, приводящая к остановке сервиса при наличии более 15 сетевых адаптеров.
Оптимизация безопасности сервиса.
Оптимизация UI.
Guardant License Wizard
Улучшен механизм преднастройки мастера активаций через конфигурационный файл «station.ini». Теперь, если в одной директории с исполняемым файлом утилиты «Мастер лицензий Guardant» находится «station.ini», то адрес сервера всегда берется из этого файла. Даже если в настройках утилиты заменить адрес на другой, то при следующем запуске он снова будет прочитан из конфигурационного файла.
Для консольного режима добавлена опция ‘—dongle-set-license’ для удаленной записи лицензии в аппаратный ключ при помощи специального кода записи.
Исправлены ошибки при переносе программной лицензии (программный ключ Guardant DL) в консольном режиме.
Исправлена интерфейсная ошибка, при которой для программной лицензии (Guardant DL) с запретом переноса был активен пункт меню «Перенести на другой компьютер», хотя фактически выполнить перенос для такой лицензии было невозможно.
Ошибка «Некорректный серийный номер» теперь выводится не только в лог, но и в интерфейс утилиты, при попытке активации невалидного серийного номера.
Добавлена функция удаленной онлайн-записи лицензий в аппаратные ключи без необходимости их первичной прошивки у вендора.
Теперь при работе в консольном режиме, если для параметра ‘—host’ не указан сетевой порт в строке с адресом сервера, выводится ошибка «Incorrect host URL format».
Оптимизация UI
Guardant Station
Для всех списков в интерфейсе сделана автоматическая прокрутка, вместо кнопки «Показать еще».
На странице «Заказы» признак «ПРОБНЫЙ» заменен на «TRIAL» для заказов триальных лицензий. Также признак «TRIAL» теперь отображается на странице с данными серийного номера ключа Guardant DL Trial.
Для пользователей с правами «Менеджер по продажам/продукту» добавлена возможность просматривать баланс.
Исправлена ошибка, при которой локальный компонент в программной лицензии (Guardant DL) после активации мог отображаться как сетевой в Guardant License Wizard.
Исправлено прокидывание сообщений через исключения в «тихом» режиме для .NET приложений
Добавлена возможность искать покупателя по данным, указанным в поле «CRM ID» и в поле «Комментарий».
В REST API добавлена возможность формирования отчетов:
* по заказам,
* по продуктам,
* по истекающим лицензиям,
* по покупателям,
* по потреблению ключей и лицензий.
Guardant SLK
Оптимизация процесса шифрования больших блоков данных (>30 Кбайт) на аппаратном алгоритме. Актуально при работе с ключами Guardant SignTime
Оптимизация механизма определения виртуальных машин VirtualBox с гостевой ОС Linux
Доработана обёртка и пример для Delphi
Guardant Licensing API
Функции GrdGetHostFingerprint() и GrdGetHostInfo() теперь возвращают признак виртуальной среды «isVM». Такой же признак можно получить при помощи REST API для Guardant Control Center через запрос «GET /v1.0/lm/environment». ВАЖНО: это информационные функции, не рассчитанные на защиту от работы в VM, как это делает запрет на работу для программных лицензий в ключах Guardant DL.
Теперь при попытке использовать несколько кодов записи из одного заказа для прошивки одного аппаратного ключа, функцей GrdDongleSetLicense возвращается ошибка GRD_INVALID_PARAM (23), вместо GRD_INTERNAL_ERROR (25).
В объекте «controlCenter» для JSON-строки «visibility» добавлен новый ключ «connectionTimeout». Этот ключ позволяет установить собственный тайм-аут ожидания при попытке получить сетевую лицензию. Если по какой-либо причине получить сетевую лицензию не удаётся, ошибка вернётся по истечении заданного тайм-аута. Если не указать своё значение, будет использоваться стандартное значение — 20 секунд.
Добавлена новая функция GrdGetHostInfo в обертки для: C++ / .Net / Delphi / Java / Python
Источник: habr.com