Импорт через лямбда-функцию используя файл отчета
Чтобы отправить данные сканирования в Security Center
У вас есть возможность импортировать отчеты в Security Center с помощью функции, представленной ниже:
import json import urllib.request import urllib3 def import_report(<event>): security_center_api_token = "Token " + <security_center_api_key> while True: try: url = 'https://<security_center_url>/api/v1/scan/import/' body = { "file": (<event>.json", json.dumps(<event>)), "product_name": "<product_name>", "product_type": "<product_type>", "scanner_name": "<scanner_name>", "branch": "<branch_name>", "repository": "<repository_ssh_url>", "docker_image": "<registry_url>", "domain": "<domain>", "host": "<host>" } data, header = urllib3.encode_multipart_formdata(body) r = urllib.request.Request(url, data=data) r.add_header('Authorization', security_center_api_token) r.add_header('Content-Type', header) response = urllib.request.urlopen(r) print(response.getcode()) except Exception as e: raise e break return { 'statusCode': 200, 'body': json.dumps('Event successfully imported') }
Замените следующие параметры:
<event>- название файла, содержащего отчет сканера.<security_center_api_key>- токен авторизации из профиля пользователя Security Center.<security_center_url>- адрес вашего Security Center.<product_name>- название вашего продукта.<product_type>- тип вашего продукта.<scanner_name>- название вашего сканера.<branch_name>(необязательно) - имя ветки в репозитории исходного кода (если применимо). Этот параметр особенно полезен, когда вы хотите связать результаты сканирования с определенной веткой в вашем репозитории. Если параметр не указан, сканирование будет ассоциировано с веткой по умолчанию.
Информация об активах, если используется Аудитор:
<repository>- если ваш продукт это код в репозитории, введите URL-адрес репозитория в определенном формате, например: git@gitlab.com:cybercodereview/security-center.git.<docker_image>- если ваш продукт это Docker-образ, введите адрес registry, в котором находится ваш продукт, например: registry.gitlab.com/cybercodereview/security-center/back/auto_validator:latest.<domain>- если ваш продукт является веб-ресурсом, введите доменное имя продукта, например: cybercodereview.ru.<host>- если ваш продукт находится в Интернете, введите IP-адрес вашего продукта, например: 0.0.0.0.
Заполнив все необходимые данные, вы можете использовать функцию для отправки отчетов из сканеров в Security Center.