Как читать авторский курс и нормативные материалы
Это учебные материалы, а не заключение о соответствии конкретного продукта. Организационные модели курса отделяйте от терминов стандарта: ППК в опубликованном проекте — машиночитаемый перечень, а живой реестр его версий является практикой сопровождения. Термин OSA в разных материалах имеет разный охват. Статус и обязательность нормативного документа проверяются отдельно; проект КАПО опубликован как проект первой редакции.
Nexus Repository
Контекст Менеджер репозиториев Sonatype: хранит и проксирует пакеты для Maven, npm, PyPI, NuGet, Go, apt, yum, Docker/OCI, Conan и Raw. В курсе фигурирует как один из двух типовых движков controlled repository для OSA-входа (наряду с Artifactory) — управляемая прокладка между разработчиком и публичным реестром, через которую идут все скачивания.
Для чего
Сводит все запросы пакетных менеджеров в одну подконтрольную точку. Три типа репозиториев — hosted (свои артефакты), proxy (кэширующий прокси публичного реестра) и group (объединение нескольких под одним URL) — дают индекс, на котором можно держать политику допуска: пакет из block-правила физически не отдаётся в сборку.
Как применяют
Менеджер настраивают на group-репозиторий Nexus вместо публичного реестра. Пример для Python:
# pip.conf — install идёт только через подконтрольный индекс
[global]
index-url = https://nexus.internal/repository/pypi-group/simple/
Maven — через settings.xml с <mirror>, заворачивающим central на group-репозиторий:
<mirror>
<id>nexus-group</id>
<mirrorOf>*</mirrorOf>
<url>https://nexus.internal/repository/maven-group/</url>
</mirror>
Загрузка и поиск компонентов — через REST API (/service/rest/v1/components, /v1/search). Поиск уязвимостей и оценка состава — отдельный продукт (IQ Server / Lifecycle), а не базовый Repository.
Сильные стороны
- Бесплатная редакция (Community/OSS) разворачивается on-premise — низкий порог для учебного и пилотного controlled-repo контура.
- Покрывает основные экосистемы курса одним движком; proxy-репозиторий кэширует артефакты и снижает зависимость от внешней сети.
- Routing rules позволяют ограничить, какие пути/группы артефактов вообще доступны через proxy — грубый, но рабочий блок-механизм.
Ограничения
- Базовый Repository не вычисляет уязвимости и не сопоставляет лицензии — для вердиктов нужен отдельный анализатор поверх содержимого.
- Тонкие политики OSA (карантин «молодых» версий, malware-фид, классификация) требуют коммерческого слоя или внешнего движка; routing rules для этого слишком грубы.
- Как и любой proxy, не отменяет выполнение
install-скриптов после выдачи пакета и сам по себе не закрывает dependency confusion.
Offline / on-premise
Да. Полностью разворачивается в закрытом контуре; proxy-репозитории работают офлайн как кэш единожды скачанного. Для наполнения кэша или обновления нужен управляемый доступ наружу либо ручная заливка в hosted-репозиторий.
Связанные темы
- Модули: М08. Защита цепочки поставки и OSA · М11. Генератор фактов и сервис вердиктов
- Практики: П17. OSA controlled repository policy · П18. OSA Proxy режимы и ограничения
- Смежные карточки: JFrog Artifactory · CodeScoring · GitLab CI