Книга: Безопасность веб-приложений. Исчерпывающий гид для начинающих разработчиков
Назад: Непрерывные интеграция, поставка и развертывание
Дальше: Ориентированность на облако

DevSecOps

Это то, чем мы всегда занимались как специалисты по безопасности приложений. DevSecOps – это просто безопасность приложений, адаптированная к среде DevOps.

Имран А. Мохаммед


При работе в среде DevOps специалисты по безопасности должны корректировать свою деятельность таким образом, чтобы она вписывалась в процессы, которым следуют инженеры DevOps. Если команда DevOps основывает свою работу на спринтах, то мы (служба безопасности) должны вписать свою работу и проекты в спринты. Если она использует конвейеры CI/CD для автоматизации тестирования, то необходимо, чтобы часть нашего тестирования безопасности была включена в эти конвейеры. Каким бы способом команда DevOps ни выполняла свои функции жизненного цикла разработки системы, нам нужно вплести себя и наши цели безопасности в этот процесс посредством нескольких существующих стратегий. Опять же, этой теме посвящены целые книги, поэтому мы не можем охватить всю информацию, но давайте обсудим хотя бы часть.

Первый и самый важный пункт, на котором должны сосредоточиться команды безопасности при попытке работать в среде DevOps, – это убедиться в том, что команды разработчиков и эксплуатации работают без оглядки на службу безопасности. Мы (служба безопасности) не можем ограничивать их работу. Другими словами, мы можем прервать сборку только в случае возникновения действительно чрезвычайной ситуации или очень серьезного риска. Служба безопасности больше не является пропускным пунктом, она стала помощником.

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

Последний пункт, который мы здесь упомянем, заключается в том, что при работе в среде DevOps следует обеспечивать быструю и своевременную обратную связь с командами разработки и эксплуатации. Необходимо также получать от них отзывы о своей работе, а затем включать эти замечания в свои процессы, проекты и политики для достижения наилучших результатов.

Облако

Многие люди дают разные определения облачной безопасности, но в этой книге мы будем говорить об облачно-ориентированной безопасности. При обсуждении данной темы некоторые люди могут подумать, что она подразумевает почти то же самое, что и безопасность центра обработки данных или сетевая безопасность, но это не так. Говоря об облачной безопасности, мы имеем в виду, в частности, использование всех новых поразительных функций, услуг, инструментов и возможностей облака, которые недоступны в обычном традиционном центре обработки данных, а также безопасность, связанную с этими новыми технологическими предложениями.

Облачные вычисления

Облачные вычисления – это доступ по запросу к ресурсам компьютерной системы, особенно хранилищам данных и вычислительных мощностей, без прямого активного управления со стороны пользователя.

Википедия


Давайте разберем это определение. «Доступ по запросу» означает, что пользователь в любой момент может запросить все, что предлагает поставщик в качестве услуги, включая инфраструктуру, платформу как услугу, инструменты облачно-ориентированной безопасности и т. д. Сюда можно добавить больше сервисов, что одновременно и прекрасно, и потенциально небезопасно.

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

Тем не менее, если заранее принять во внимание данный риск, можно выбрать автоматическое масштабирование, но при этом добавить ограничение на максимальное значение (установить квоту ресурсов) и включить соответствующее оповещение. Другим способом препятствования этому риску может быть добавление защиты от DoS-атаки, которую обычно предлагает большинство провайдеров публичного облака.

Техническому специалисту чрезвычайно удобно иметь возможность запрашивать ресурсы в случае необходимости. Возможность автоматического развертывания сотен машин одновременно или обработки гигантских объемов данных с помощью удивительной вычислительной мощности облака позволяет IТ-специалистам выполнять гораздо больше действий, чем когда-либо прежде. Именно это мы подразумеваем под «доступом по запросу» к ресурсам в облаке.

Вернемся к нашему определению облачных вычислений и посмотрим на его концовку: «без прямого активного управления со стороны пользователя».

Несколько страниц назад мы говорили, что провайдер платформы как услуги (PaaS) берет на себя управление системами пользователей. Доверяя своему облачному провайдеру исправление и укрепление защиты PaaS, клиент перепоручает ему выполнение этих функций. Так как пользователю облака не нужно активно управлять PaaS, у него остается больше времени на другую работу.

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

Назад: Непрерывные интеграция, поставка и развертывание
Дальше: Ориентированность на облако