Загрузка файлов для сканирования#
Основной сценарий#
Владелец проекта/Специалист ИБ/Разработчик (например, разработчик или CI-система) получает доступ к кластеру Kubernetes и переходит в раздел:
Networking → Ingresses.Владелец проекта/Специалист ИБ/Разработчик находит в списке
Ingressesресурс, соответствующий сервисуproject-store, и копирует значение поляHost.Пример:
project-store.asoc-dev.mycompany.Владелец проекта/Специалист ИБ/Разработчик открывает Postman и формирует HTTP-запрос:
Метод:
POSTURL:
https://<project-store-host>/v1/file/upload.Пример:
https://project-store.asoc-dev.mycompany/v1/file/upload).
На вкладке
Body, Владелец проекта/Специалист ИБ/Разработчик:Выбирает тип
form-data.В поле
KEYуказываетfile(в виде текстового поля, не файла).В соответствующем поле
Valueвыбирает файл для загрузки (например,scan-results.json), тип —File.
Владелец проекта/Специалист ИБ/Разработчик нажимает кнопку Send.
Система:
Принимает файл.
Сохраняет его во временное хранилище.
Возвращает ответ с кодом
200 OKи телом, содержащим идентификатор загруженного файла:
{ "fileId": "fxx7bxx9-dxx2-4fxx-bxx5-xxe7xxa9xxc1" }Файл успешно загружен,
fileIdполучен и может быть использован для запуска сканирования.
Исключительные сценарии#
В поле
Valueне выбран файл:Возвращается ошибка:
400 Bad Request.Содержимое HTTP-ответа:
{"error": "No file provided in 'file' field"}.
Поле
KEYзаполнено не какfile, а какupload,file_data:Сервер игнорирует поле, возвращает
400 Bad Request.
Недоступен сервер
project-store:Postman возвращает
Error: Could not resolve host.
Альтернативные сценарии#
Владелец проекта/Специалист ИБ/Разработчик использует команду для загрузки файла через
curl:curl -X POST https://project-store.asoc-dev.mycompany/v1/file/upload \ -H "Content-Type: multipart/form-data" \ -F "file=@scan-results.json"Файл успешно загружен и может быть использован для запуска сканирования.