В этом практическом проекте DevSecOps вы решите, какие байты зависимостей допустимы в рабочей сборке. Вы исправите подготовленный инструмент расчёта стоимости билетов, затем примените тот же подход к выдаче материалов мастерской.
Две пошаговые лаборатории посвящены выбору источника и хешам полного набора зависимостей. Самостоятельное задание меняет связи между пакетами, сохраняя инструменты и соглашение о вызове установщика.
Чему вы научитесь
- Определять прямые и косвенные зависимости и объяснять, почему второй индекс pip не является резервом с меньшим приоритетом.
- Заново устанавливать одобренные пакеты в отдельных Python-окружениях и выдавать полную правильную ведомость цен.
- Отклонять wheel-файлы с теми же именем и версией, но другими байтами, по независимо одобренным хешам.
- Сохранять допустимые зеркала, пути в кавычках, поведение приложения и исходные заказы.
Для кого этот курс
Для начинающих в DevSecOps, умеющих пользоваться cd, cat, основными командами терминала и редактировать небольшой текстовый файл. Программирование на Python, Docker и облачная учётная запись не нужны. Первая лаборатория объясняет виртуальные окружения, параметры pip и короткий установочный сценарий Shell.
Учебная среда: Каждая лаборатория запускается независимо. В Linux-терминале браузера подготовлены Python, pip, оригинальные синтетические wheel-файлы и локальные источники пакетов.
Часто задаваемые вопросы
Нужно ли публиковать или атаковать публичный пакет?
Нет. Все источники и пакеты находятся в контролируемой учебной среде. Подмены изменяют только расчёты примера.
Совпадение хеша доказывает безопасность пакета?
Оно доказывает совпадение байтов с независимо предоставленным одобрением. Оно не подтверждает личность издателя или отсутствие уязвимостей.
Что нужно сдать?
Повторно используемый установочный сценарий, реальное окружение с одобренными пакетами и правильный CSV. Самостоятельное задание также должно отклонять изменения прямых и косвенных зависимостей и принимать неизменённые зеркала.



