Компания CodeScoring представила собственное хранилище артефактов CodeScoring.Save. Решение предназначено для хранения и распространения пакетов, библиотек, контейнерных образов и других компонентов, используемых в разработке ПО.
Save ориентировано на корпоративный сегмент и компании любого масштаба, которым необходим предсказуемый и отказоустойчивый репозиторий артефактов.
Об этом Anti-Malware рассказал руководитель разработки продуктов CodeScoring Дмитрий Ключников на конференции CodeScoring Masters. По его словам, разработка Save велась на языке Go с прицелом на современные Kubernetes-среды и стандарты безопасной разработки.
«Мы привлекли к тестированию доверенных партнёров и заказчиков, готовых проверять решение на практике с самых ранних этапов. Их регулярная обратная связь помогает нам калибровать архитектуру и функциональность Save под реальные рыночные требования», — рассказал Дмитрий Ключников.
Хранилище артефактов используется разработчиками как централизованная точка для получения, хранения и распространения компонентов ПО. В эту категорию входят, например, Sonatype Nexus Repository, JFrog Artifactory и Harbor. При этом Save поставляется с готовым инструментом автоматической миграции с открытых репозиториев.
CodeScoring.Save рассчитано одновременно на размещение собственных артефактов и работу с внешними репозиториями через прокси. В продукте заявлена поддержка Maven, npm, NuGet, PyPI, Go Modules, Docker/OCI, DEB, RPM и RAW-файлов.
Save разработано на Go, разворачивается в Kubernetes и поставляется через Helm. В систему встроены ролевая модель, отдельные аккаунты для автоматизированных систем, аудит систем, аудит действий пользователей и API. Вычислительная часть приложения отделена от слоя хранения, что позволяет масштабировать их независимо.
Одной из особенностей нового продукта разработчики называют встроенную работу с безопасностью артефактов. Безопасность заложена в архитектурную основу продукта: интеграция с CodeScoring.OSA позволяет проверять компоненты с использованием данных платформы CodeScoring. Таким образом, базовую информацию о найденных проблемах можно будет получать непосредственно в хранилище.
При этом CodeScoring не собирается привязывать новое хранилище к покупке основной платформы.
«Это абсолютно отделяемое решение. Оно может продаваться вместе с CodeScoring, а может продаваться отдельно», — подчеркнул Дмитрий Ключников.
Продукт поставляется как самостоятельное локальное решение для развёртывания в инфраструктуре заказчика. Ключевые корпоративные возможности включены в базовую функциональность продукта. Запуск собственного репозитория усиливает возможности всей платформы безопасной разработки CodeScoring.
Сейчас OSA Proxy и Save решают разные задачи. OSA Proxy проверяет пакеты и манифесты, которые разработчики получают из внешних репозиториев, по заданным политикам безопасности. Save отвечает прежде всего за хранение и распространение самих артефактов.
Тесная интеграция с модулем OSA обеспечивает соблюдение политик безопасности и блокировку опасных компонентов непосредственно на уровне репозитория.
«Интеграция модулей позволит выстроить бесшовный контроль: Save становится единой доверенной точкой входа, предотвращая попадание вредоносных пакетов в контур разработки», — рассказал Ключников.
По его словам, наличие собственного хранилища позволяет разработчикам CodeScoring не зависеть от набора данных и возможностей интеграции, которые предоставляют сторонние системы управления репозиториями.
Ещё одним направлением развития продукта станет работа с моделями искусственного интеллекта как с отдельным типом артефактов.
На первом этапе речь идёт о хранении и распространении моделей. Среди экосистем, поддержку которых рассматривают разработчики, Дмитрий Ключников назвал Hugging Face.
«В первую очередь мы рассматриваем базовый функционал — именно хранение и дистрибуцию моделей», — пояснил он.
Более сложные возможности, в том числе инфраструктура для обучения моделей, пока находятся на стадии изучения спроса.
CodeScoring также планирует сертифицировать Save с учётом российских требований безопасной разработки.
Параллельно разработчики ориентируются и на зарубежные практики, связанные с подтверждением происхождения и целостности программных артефактов.
Таким образом, после запуска Save линейка CodeScoring выйдет за пределы анализа и проверки сторонних компонентов: компания добавляет собственную инфраструктуру для их хранения и распространения.


Однако есть кое-что, вызывающее реальное беспокойство, а именно то, что какая кучка людей через сеть в режиме реального времени будет пользоваться (а может быть и злоупотреблять?) технологией распознавания лиц, в особенности, если это все будет происходить не под контролем правоохранительных органов. Все вернется к отнюдь не добрым традициям Средних Веков - к тому, что суд будет вершить толпа, только уже не костром и пытками, а алгоритмами и разнообразными прикладными интерфейсами.

