Ваша задача — создать безопасный пайплайн для open-source проекта. Он должен включать в себя статический анализатор, динамический анализатор, чекеры безопасности, Security Gateway и документацию процесса.
Вы должны сами выбрать проект, для которого будет выстроен пайплайн. Платформа для организации CI/CD тоже на ваш выбор. Рекомендуем взять за основу GitLab CI/CD, GitHub Actions, CircleCI. Сервер для разворачивания даёт дипломный руководитель или методист в виде VPS.
Можно задать вопрос на портале. В вопросе укажите открытую часть ssh-ключа (public-key). В ответе на вопрос получите адрес сервера.
Или же, написать методисту в telegram. Менее предпочтительный способ.
-
Требования к проекту. Проект должен быть с открытым исходным кодом, представлять из себя веб-сервис или сайт с функционалом, использованием баз данных или кеша. Например, можно взять за основу Defect Dojo или CMS, Netlify-CMS.
-
Требования к покрытию проекта тестами безопасности. Проект должен проверяться на наличие уязвимостей в коде. Ни один язык программирования или фреймворк не должны быть пропущены для конкретного проекта. Весь процесс должен быть задокументирован и описан с аналитикой выбора инструментов и зон роста.
Критерии достижения:
- Настроенный пайплайн по сборке и доставке программного обеспечения.
- Использование облачных сервисов для раскатки.
- Хорошо задокументированный процесс.
Критерии достижения:
- Покрытие кода проверками.
- Успешные проверки во время сборки.
- Выгрузка результатов в CI или систему менеджмента уязвимостей.
Критерии достижения:
- Покрытие сервиса проверками.
- Успешные сканы по всем имеющимся методам.
- Выгрузка результатов в CI или систему менеджмента уязвимостей.
Критерии достижения:
- Проверка репозиториев на секреты.
- Проверка конфигурации или образов.
Критерии достижения:
- Имеется триггер на остановку релиза при наличии уязвимостей.
- Сделаны дополнительные триггеры - оставление комментариев в MR, выгрузка рекомендаций по исправлению уязвимостей.
- Если у вас возник вопрос, попробуйте сначала самостоятельно найти ответ в интернете. Навык поиска информации пригодится вам в любой профессиональной деятельности. Если ответ не нашёлся, можно уточнить у руководителя по дипломной работе.
- Если у вас набирается несколько вопросов, присылайте их в виде нумерованного списка. Так дипломному руководителю будет проще отвечать на каждый из них.
- Для лучшего понимания контекста прикрепите к вопросу скриншоты и стрелкой укажите, что именно вызывает вопрос. Программу для создания скриншотов можно скачать по ссылке.
- По возможности задавайте вопросы в комментариях к коду.
- Формулируйте свои вопросы чётко, дополняя их деталями. На сообщения «Ничего не работает», «Всё сломалось» дипломный руководитель не сможет дать комментарии без дополнительных уточнений. Это затянет процесс получения ответа.
- Постарайтесь набраться терпения в ожидании ответа на свои вопросы. Дипломные руководители Нетологии – практикующие разработчики, поэтому они не всегда могут отвечать моментально. Зато их практика даёт возможность делиться с вами не только теорией, но и ценным прикладным опытом.
Рекомендации по работе над дипломом:
- Не откладывайте надолго начало работы над дипломом. В таком случае у вас останется больше времени на получение рекомендаций от руководителя и доработку диплома.
- Разбейте работу над дипломом на части и выполняйте их поочерёдно. Вы будете успевать учитывать комментарии от руководителя и не терять мотивацию на полпути.