Работа с артефактами разработки: каким отечественным инструментом заменить Sonatype Nexus и JFrog Artifactory
Уход иностранных вендоров заставил российских разработчиков искать отечественные аналоги популярных сервисов для хранения и управления артефактами Sonatype Nexus Repository или JFrog Artifactory.
Содержание |
Российские вендоры смогли оперативно предложить рынку безопасные и эффективные инструменты на базе open source-решения Nexus. Так, первая версия Сфера. Дистрибутивы и лицензии от Холдинга Т1 представляет собой переработанный и адаптированный продукт на основе Nexus, который показал свою эффективность для небольших проектов из 20-30 команд. Однако с увеличением их числа повышается и вероятность проблем с администрированием, поиском и даже хранением артефактов. Для разрешения трудностей с масштабированием мы создали версию именно для enterprise-сегмента, которая сейчас участвует в пилотных проектах и готовится к первым промышленным внедрениям, — Максим Головкин, руководитель продукта Сфера. Дистрибутивы и лицензии. |
Ключевые возможности продукта
Сфера.Дистрибутивы и лицензии — продукт для централизованного хранения и управления дистрибутивами и артефактами разработки. Будучи единой точкой доступа к артефактам разработки, инструмент повышает эффективность и безопасность ИТ-конвейеров. Особенно это важно в условиях одновременной работы десятков и сотен распределенных команд.
Продукт позволяет:
- работать с библиотеками и дистрибутивами в процессе создания ПО, в том числе с хранящимся во внешних репозиториях;
- выполнять функции Enterprise Docker Registry для Kubernetes для эксплуатации промышленных систем;
- обеспечивать защиту коммерческой тайны путем разграничения доступа к репозиториям;
- производить мониторинг уязвимостей, пресекать использование компонентов с уязвимостями или лицензионными рисками с помощью собственных функций продукта, а также через интеграцию с продуктами других вендоров, если компаниям требуется применить сторонний продукт;
- выполнить импортозамещение без потери качества процесса разработки ПО.
Поддерживаемые типы репозиториев
Платформа Сфера — платформа производства ПО, разработка Холдинга Т1. Сфера включает в себя набор инженерных инструментов для управления разработкой, тестированием, эксплуатацией программного обеспечения, а также для работы с исходным кодом и инструментами мониторинга рабочих станций и бизнес-процессов. Они интегрированы между собой и позволяют выстраивать сквозной процесс управления производством ПО на всех этапах жизненного цикла. Помимо этого, платформа содержит регламентирующую эффективную организацию процессов разработки методологию, которая покрывает 8 основных слоев: процессы сопровождения, управление людьми, стримами и командами, управление разработкой, управление продуктами и сервисами, инженерные практики, культура и ценности и сквозной мониторинг на всех этапах разработки». Подробнее здесь. |
Сфера. Дистрибутивы и лицензии поддерживает три типа репозиториев: hosted, proxy и group. Hosted-репозитории обеспечивают максимальный контроль над доступом, конфигурацией и содержанием пакетов. Proxy-репозитории позволяют подключать внешние репозитории из интернета или с другого сервера, во многом благодаря чему ускоряют загрузку и сокращают время сборки. Group-репозитории группируют различные источники пакетов и предоставляют единую точку доступа для всех зависимостей проекта. Благодаря поддержке всех трех типов репозиториев, разработчики могут получить унифицированный доступ к любому репозиторию, используя одну и ту же платформу без необходимости переключаться между различными инструментами. Это упрощает поиск и использование необходимых пакетов, а также позволяет легко перемещаться между различными источниками. Кроме того, продукт оптимизирует управление зависимостями и рабочий процесс в целом.
Хранение данных
Функционал хранилища Сфера. Дистрибутивы и лицензии включает следующие возможности:
- хранение и обмен артефактами самых распространенных форматов: Maven, Gradle, Docker, Pypi;
- управление дополнительной информацией об артефактах, например установка тегов, добавление своих описаний;
- поиск артефактов по репозиториям;
- открытый API,
- перенос артефакта между окружениями без изменения его свойств.
Кроме того, разработчики могут получить удобный доступ к хранилищу, используя открытый API прямо из своей IDE.
Администрирование
Для администрирования артефактов доступны следующие возможности: настраиваемые политики очистки, система управления ролями и доступами, интеграция одновременно с несколькими серверами управления политиками и пользователями по протоколу LDAP, система уведомлений и возможность устанавливать пользовательские квоты на хранилище данных.
Кроме того, DevOps-инженеры и разработчики могут легко встроить необходимый репозиторий артефактов в пайплайн сборки, используя открытые API продукта. А с помощью гибких политик очистки и тэгов место для хранения артефактов не закончится.
Безопасность
Вопросам безопасности необходимо уделять первостепенное внимание на всех этапах разработки ПО, особенно при использовании компонентов с открытым исходным кодом.
Использование open source-библиотек значительно облегчает и ускоряет разработку, однако несет в себе и серьезные риски. Яркий пример — библиотека node-ipc, которую поддерживает разработчик Брэндон Нозаки Миллер. В марте 2022 года он выпустил вредоносную версию пакета, которая стирала все файлы на компьютерах с белорусскими и российскими IP-адресами. Чтобы обезопасить себя от подобных атак, программисты собирают сведения о скомпрометировавших себя решениях в специальные базы, кроме того, в России есть официальная база БДУ ФСТЭК. Наш продукт, используя эти данные, проверяет наличие уязвимостей в исходном коде, маркирует их в зависимости от уровня риска и может остановить сборку, если уязвимость критичная, — отмечает Максим Головкин. |
Помимо анализа компонентов на наличие известных уязвимостей Сфера. Дистрибутивы и лицензии проверяет лицензионные условия и поддерживает актуальные версии компонентов для обеспечения постоянной защиты.
SCA-продукт (продукт для анализа компонентов) встраивается в пайплайн сборки проекта, выполняя анализ на всех этапах сборки и не давая использовать потенциально небезопасные компоненты. Новые уязвимости появляются постоянно, и продукт с заданной периодичностью выполняет проверку уже существующих сборок, позволяя узнавать о возможных рисках в разрабатываемом ПО.
В наших ближайших планах — создание файрвола (он будет работать не только с нашим продуктом Дистрибутивы и лицензии, но и с другими решениями на базе Nexus и Artefactory), который не позволит загружать библиотеки в ваш контур разработки, если в них есть критичные уязвимости. Этот функционал вызывает живой интерес у наших заказчиков, и мы стремимся оперативно предоставить его рынку, — Максим Головкин. |
Решение позволяет аккумулировать в одном месте информацию о всех используемых компонентах и уязвимостях, по каждому проекту разработки.
Разграничение прав
Контроль доступа и управление правами пользователей может осуществляться с помощью интеграции через LDAP либо с помощью модуля «Доступы и роли» — инструмента, входящего в платформу производства технологических решений Сфера. Модуль предоставляет широкие возможности для гибкого управления доступами и созданием ролей.
Бизнес-преимущества продукта:
- Снижение трудозатрат на разработку благодаря гибкому управлению репозиториями и компонентами в них, в том числе переиспользованию библиотеки команд и подключению безопасных open-source-библиотек.
- Сокращение рисков финансовых и репутационных потерь из-за возможного нарушения лицензионных соглашений при разработке продуктов и попадания уязвимых компонентов в разрабатываемые программные продукты.
- Импортозамещение инструментария для разработчиков без потери его качества.
Для кого полезен продукт
Инструмент Сфера. Дистрибутивы и лицензии предназначен для enterprise-компаний B2B- и B2G-сектора, разработчиков программных продуктов и системных интеграторов. Он полезен для всех ролей в цепочке создания ПО:
- для DevOps-инженеров, которым необходимо настроить управление дистрибутивами и артефактами разработки и при этом перейти на российское ПО;
- для команд разработки, использующих в ежедневной работе большой набор репозиториев и библиотек;
- для ИБ-специалистов, обязанных контролировать все open source-компоненты, применяемые командами разработки, и устанавливать политики использования каждого компонента, основываясь на приемлемом уровне риска;
- для юристов и комплаенс-служб, проверяющих нарушение авторских прав третьих лиц и формирующих авторские права на разработку.
Сфера. Дистрибутивы и лицензии введен в промышленную эксплуатацию в банке ВТБ. Его активно используют 700 продуктовых команд банка, которые оперируют примерно 7000 репозиториев, содержащих 130 терабайт артефактов. Продукт Сфера. Дистрибутивы и лицензии позволяет им ускорить разработку ПО и вывести его в эксплуатацию в сжатые сроки.
Планы развития
Команда разработчиков Сфера. Дистрибутивы и лицензии постоянно работает над расширением функциональности продукта, увеличением списка поддерживаемых репозиториев и повышением уровня безопасности процесса разработки в каждой компании.
Наша концепция развития — создать безопасное место хранения, обмена и распространения всех разработок компании, — подчеркивает Сергей Смирнов, руководитель кластера DevSecOps Платформы Сфера. |