HTTP Ingestの設定🔗
以下の手順は、Secureworks® Taegis™ XDR HTTP Ingestを設定し、HTTPサーバーにログを送信できるデータソースからの取り込みを可能にするためのものです。
-
Taegis Menuからインテグレーション → クラウドAPIを選択します。
-
ページ上部のインテグレーションの追加を選択します。

インテグレーションの追加 -
カスタムタブを選択し、HTTP Ingestカードからセットアップを選択します。
-
インテグレーションの名前を入力し、完了を選択します。

HTTP Ingestインテグレーション -
インテグレーションキーとURLをコピーします。
重要
インテグレーションキーとURLは、このダイアログボックスを閉じると再表示できませんので、必ず保存してください。

HTTP IngestインテグレーションキーとURLのコピー -
OKを選択します。HTTP IngestインテグレーションがクラウドAPIインテグレーションのテーブルに表示されます。
-
ステップ4でXDRからコピーしたインテグレーションキーとURLを使用して、データソースをHTTPSサーバーにログを送信するように設定します。
例🔗
以下は、ファイルの内容を設定済みのXDR HTTP Ingestインテグレーションに送信するスクリプトの例です。
Python🔗
Pythonスクリプトを実行する前に、HTTP_URLとACCESS_TOKENの環境変数を設定してください。
#!/usr/bin/env python
import requests
import os
from os import sys
def upload_file(url,token,filename):
contents = ""
if os.path.exists(filename):
content_length = os.path.getsize(filename)
try:
with open(filename,"rb") as fd:
contents = fd.read()
except OSError as err:
print("OS error: {0}".format(err))
sys.exit(2)
else:
print("The file does not exist")
sys.exit(2)
# Set the headers for the request
headers = {}
if "{" in contents.decode(encoding='UTF-8',errors='strict'):
headers["Content-Type"] = "application/json"
else:
headers["Content-Type"] = "text/plain"
headers['Authorization'] = 'Bearer ' + token
# Send the POST request with the data
response = requests.post(url, data=contents, headers=headers)
if response.status_code == 200:
print("Upload success of file {0}".format(filename))
elif response.status_code == 403:
print("Unauthorized access credentials provided, please check your token and url for accuracy.")
else:
print("Upload failed with error {0}".format(response.text))
if __name__ == "__main__":
token = os.environ.get('ACCESS_TOKEN')
url = os.environ.get("HTTP_URL")
filename = sys.argv[1]
upload_file(url,token,filename)
cURL🔗
#!/bin/bash
#Set the HTTP_URL and ACCESS_TOKEN environment variables before running the Bash script.
export HTTP_URL="your_http_ingest_url"
export ACCESS_TOKEN="your_access_token"
# URL and Bearer token environment variables
url=$HTTP_URL
token=$ACCESS_TOKEN
# File to read
filename="$1"
# Perform a POST request with JSON data
echo "Performing POST request to $url"
response_code=$(curl $url -o /dev/null -w "%{http_code}" -H "Authorization: Bearer $token" --data-binary @$filename)
if [[ $response_code -eq 200 ]]; then
echo "Request successful"
else
echo "Request failed with response code $response_code"
fi