Журнал "Information Security/ Информационная безопасность" #4, 2024
Основной вызов, который привлекает внимание мно- гих – это распространение API не только для обмена между системами, но и для функционирования самих подкомпонентов приложе- ний. Основной вызов, кото- рый привлекает внима- ние многих – это рас- пространение API не только для обмена между системами, но и для функционирования самих под- компонентов приложений. Сей- час даже фронтовая часть в основном состоит из API-вызо- вов, и это считается хорошей практикой. А если вспомнить, что согласно отчету GMI 2 , боль- ше 70% систем сейчас разра- батываются и функционируют на базе микросервисов, то ситуация смотрится еще инте- реснее: API на API едет и API погоняет. Такое развитие впол- не закономерно, потому что в России идет бум разработки с учетом требований импорто- независимости. Надо много и быстро разрабатывать под совершенно разные нужды. А когда нужно быстро, понятия оптимизации, безопасности и корректности уходят на зад- ний план. И возвращаются толь- ко когда наступает стадия мас- штабирования и подстройки системы под более жесткие тре- бования. Основные проблемы при работе с API Стоит начать с азов. Как и в программировании, каче- ство программного кода зави- сит в том числе от количества времени, потраченного на его оптимизацию. Для этого есть понятие "рефакторинг", кото- рое подразумевает под собой аудит, описание и оптимиза- цию кода таким образом, чтобы разработка разными командами и его функциони- рование были прозрачны и прогнозируемы. Вкладываем на старте, получаем результат по итогам. То же касается и API. Но насколько в каждой ситуации мы можем соблюдать все правила, зависит от тре- бований к скорости разработки и доступных трудовых ресур- сов, поэтому и нужны решения по автоматизации ряда этапов и контролей. Идеальный вариант, если в компании принята парадигма API First. Тогда процесс создания API будет выглядеть следующим образом: 1. Дизайн API. На этом этапе создается проект API. Рекомен- дуется использование открытых стандартов, таких как REST, JSON и OAuth для обеспечения совместимости API с другими системами. Выходными данны- ми этапа проектирования ста- новится Open API Specification (OAS) – документация описы- вающая API. 2. Тест. Здесь команда QA проверяет, реализуемо ли опи- санное в спецификации API: достаточно ли имеющихся и предоставляемых данных. И после валидации специфика- ции и корректировки основных несоответствий можно перехо- дить к этапу внедрения API. 3. Внедрение. Здесь API по подготовленной и проверенной спецификации становится рабо- чим элементом – либо частью коммуникаций между бэкэндом и фронтэндом, либо публичным интерфейсом. С одной лишь разницей. l Если есть этап предпродук- тового тестирования, то на этом этапе также подключаются тесты по безопасности. Обычно используется инструментарий DAST, позволяющий понять, есть ли уязвимости за эндпоин- тами в спецификации. Энд- поинт представляет собой адрес конечной точки сервиса, на который отправляются запросы. l Если нет предпродуктового тестирования. Здесь должны подключаться системы для мониторинга API, чтобы увидеть корректность реализации после всех этапов. Что можно увидеть внутри API? Для наблюдаемости описан- ного выше процесса хорошо иметь понимание, насколько реализация совпадает с реаль- ностью, при этом с помощью инструментов производства нашей компании мы выделяем следующие контроли. 44 • СПЕЦПРОЕКТ ПроAPI: принципы построения идеального API думаю, каждый участник спецпроекта “WAF для API- номики” напишет, что количество API стало огромным и даст расшифровку этому термину. Мы, в свою очередь, это уже сделали 1 и даже попытались придумать читаемую аббревиатуру. Но ничего толком не получилось: как был “Программируемый Интерфейс Приложения”, так и получился ПИП. Неблагозвучно и довольно странно, поэтому вернемся к англицизмам. Я Лев Палей, директор по информационной безопасности, “Вебмониторэкс” Рис. 1. API First Фото: Вебмониторэкс Фото: Вебмониторэкс 1 https://www.tadviser.ru/index.php/Статья:Защита_API_от_атак:_строгое_требование_или_блажь 2 https://www.gminsights.com/industry-analysis/cloud-microservices-market
Made with FlippingBook
RkJQdWJsaXNoZXIy Mzk4NzYw