マニフェストファイル
Tenable システムは、ペイロードファイルの送信を終了すると、メタデータとファイルパスとともに、送信された順にファイルをリストしたマニフェストファイルを送信します。システムは、15 分ごとにマニフェストファイルを生成します。
マニフェストファイルの使用
ロジックを構築して脆弱性データをアプリケーションに取り込む際に、マニフェストファイルを参照できます。これを行うには、マニフェストファイルにハンドラーを適用し、それで開始するプロセスがペイロードファイルを順番に消費するようにします。
たとえば、Tenable システムが 12:00 PM から 12:15 PM までに 100 の検出結果ペイロードファイルを AWS バケットに送信し、それらが …/finding/<export-date>/ に保存されているとします。午後 12 時 15 分、システムはファイルのリストが含まれているマニフェストファイルをこの形式で …/manifest_finding/<export-date>/ に送信します。
このプロセスは、すべてのペイロードファイルタイプ (資産、検出結果、タグ) で同じように動作します。
マニフェストファイルのプロパティ
次の表は、Tenable データストリームのマニフェストファイルに表示されるプロパティを定義しています。
| プロパティ | データ型 | 説明 |
|---|---|---|
| type | 文字列 | マニフェストファイルのタイプ: MANIFEST_ASSET、MANIFEST_ASSET_ENRICHED_ATTRIBUTES、MANIFEST_FINDING、、MANIFEST_TAGS、MANIFEST_HOST_AUDIT_FINDING、MANIFEST_WAS_ASSET、MANIFEST_WAS_FINDING。 |
| Payload_type | 文字列 | マニフェストに含まれるペイロードのタイプ: ASSET、ASSET_ENRICHED_ATTRIBUTES、FINDING、TAGS、HOST_AUDIT_FINDING、WAS_ASSET、WAS_FINDING。 |
| payloads[].path | 文字列 | AWS バケットのペイロードファイルへのパス。 |
| payloads[].md5 | 文字列 | ペイロードファイルの MD5 ハッシュ値。 |
| payloads[].version | 整数 | マニフェストファイルのバージョン識別子。 |
| payloads[].num_updates | 整数 | ペイロードファイルのアップデートの数。 |
| payloads[].num_deletes | 整数 | ペイロードファイルの削除されたアイテムの数。 |
| payloads[].first_record_timestamp | 整数 | ペイロードファイルの最初のエントリの Unix タイムスタンプ。 |
| payloads[].last_record_timestamp | 整数 | ペイロードファイルの最後のエントリの Unix タイムスタンプ。 |
| payloads[].scan_id | 文字列 | ペイロードファイルの資産、検出結果、タグのグループ ID。グループ ID がない場合、この値は空になります。 |
マニフェストファイルの例
次の例は、Tenable システムによって送信されるマニフェストファイルの形式を示しています。ファイルでは、各ペイロードファイルは配列内の 1 つのオブジェクトです。
資産マニフェストファイル
{
"type": "MANIFEST_ASSET",
"payload_type": "ASSET",
"payloads": [
{
"path": "path-prefix/asset/2024-09-23/asset-1727096558876-17-5a0ffa7d-6b2c-4af6-a0f1-f506fe769dba.json.gz",
"md5": "c515b063ad68680fc90257444f782e94",
"version": 1,
"num_updates": 1,
"num_deletes": 0,
"first_record_timestamp": 1727096558490,
"last_record_timestamp": 1727096558490,
"scan_id": "5a0ffa7d-6b2c-4af6-a0f1-f506fe769dba"
}
]
}
資産拡張属性マニフェストファイル
{
"type": "MANIFEST_ASSET_ENRICHED_ATTRIBUTES",
"payload_type": "ASSET_ENRICHED_ATTRIBUTES",
"payloads": [
{
"path": "qa-develop/asset_enriched_attributes/2025-06-18/asset_enriched_attributes-1750252966511-1.json.gz",
"md5": "616617a2dfe0df8e892316058cf5530c",
"version": 1,
"num_updates": 17,
"num_deletes": 0,
"first_record_timestamp": 1750172403355,
"last_record_timestamp": 1750176033025,
"scan_id": ""
},
{
"path": "qa-develop/asset_enriched_attributes/2025-06-18/asset_enriched_attributes-1750252984136-2.json.gz",
"md5": "39a54218060ab9a631b474917dc6e236",
"version": 1,
"num_updates": 31,
"num_deletes": 0,
"first_record_timestamp": 1750172403475,
"last_record_timestamp": 1750172403641,
"scan_id": ""
}
]
}
{
"type": "MANIFEST_FINDING",
"payload_type": "FINDING",
"payloads": [
{
"path": "path-prefix/finding/2024-09-23/finding-1727096618967-60-5a0ffa7d-6b2c-4af6-a0f1-f506fe769dba.json.gz",
"md5": "e6919aaffa6967e0c6de3908c9a04a78",
"version": 1,
"num_updates": 2,
"num_deletes": 0,
"first_record_timestamp": 1727096618799,
"last_record_timestamp": 1727096618820,
"scan_id": "5a0ffa7d-6b2c-4af6-a0f1-f506fe769dba"
}
]
}
ホスト監査マニフェストファイル
{
"type": "MANIFEST_HOST_AUDIT_FINDING",
"payload_type": "HOST_AUDIT_FINDING",
"payloads": [
{
"path": "milestone/host_audit_finding/2025-03-21/host_audit_finding-1742541936393-96-9282cea5-39e8-cefa-d974-f2a2bd7ac70c9d992fe1d8037d1c.json.gz",
"md5": "15b7e9ed5bdace3f0f23f1b19974f5ad",
"version": 1,
"num_updates": 1,
"num_deletes": 0,
"first_record_timestamp": 1742541936259,
"last_record_timestamp": 1742541936259,
"scan_id": "9282cea5-39e8-cefa-d974-f2a2bd7ac70c9d992fe1d8037d1c"
},
{
"path": "milestone/host_audit_finding/2025-03-21/host_audit_finding-1742541940859-8-9282cea5-39e8-cefa-d974-f2a2bd7ac70c9d992fe1d8037d1c.json.gz",
"md5": "ef85f63c46c5cf48c09bfc70ffcdaa91",
"version": 1,
"num_updates": 1,
"num_deletes": 0,
"first_record_timestamp": 1742541936099,
"last_record_timestamp": 1742541936099,
"scan_id": "9282cea5-39e8-cefa-d974-f2a2bd7ac70c9d992fe1d8037d1c"
}
]
}
タグマニフェストファイル
{
"type": "MANIFEST_TAGS",
"payload_type": "TAGS",
"payloads": [
{
"path": "path-prefix/tags/2024-09-23/tags-1727096866393-5.json.gz",
"md5": "d641c41a287911d4779d1215edb2406d",
"version": 1,
"num_updates": 1,
"num_deletes": 0,
"first_record_timestamp": 1727096866345,
"last_record_timestamp": 1727096866345,
"scan_id": ""
}
]
}
Web App Scanning の資産マニフェストファイル
{
"type": "MANIFEST_WAS_ASSET",
"payload_type": "WAS_ASSET",
"payloads": [
{
"path": "milestone/was_asset/2025-03-26/was_asset-1742967665045-19-8ad3db69-f2d6-4f53-abd8-edcfd8bcaea4.json.gz",
"md5": "9a5ce4f4aa2dc16fb89a0865236aef4c",
"version": 1,
"num_updates": 1,
"num_deletes": 0,
"first_record_timestamp": 1742967664402,
"last_record_timestamp": 1742967664402,
"scan_id": "8ad3db69-f2d6-4f53-abd8-edcfd8bcaea4"
},
{
"path": "milestone/was_asset/2025-03-26/was_asset-1742967785809-8-987ab9a2-13ff-4ceb-806f-cdd85d24c1ab.json.gz",
"md5": "dba15c9adc1db1fc8393d60c63bab70d",
"version": 1,
"num_updates": 1,
"num_deletes": 0,
"first_record_timestamp": 1742967781319,
"last_record_timestamp": 1742967781319,
"scan_id": "987ab9a2-13ff-4ceb-806f-cdd85d24c1ab"
},
{
"path": "milestone/was_asset/2025-03-26/was_asset-1742967791501-0-9fb210fa-5481-4ac4-895a-3d9b62450062.json.gz",
"md5": "ed32e90f74bd456a74390a0fff849b95",
"version": 1,
"num_updates": 1,
"num_deletes": 0,
"first_record_timestamp": 1742967786554,
"last_record_timestamp": 1742967786554,
"scan_id": "9fb210fa-5481-4ac4-895a-3d9b62450062"
}
]
}
Web App Scanning の検出結果マニフェストファイル
{
"type": "MANIFEST_WAS_FINDING",
"payload_type": "WAS_FINDING",
"payloads": [
{
"path": "milestone/was_finding/2025-03-26/was_finding-1742967776983-105-8ad3db69-f2d6-4f53-abd8-edcfd8bcaea4.json.gz",
"md5": "dcf5f81f73dc5b61fce615114a162a71",
"version": 1,
"num_updates": 2,
"num_deletes": 0,
"first_record_timestamp": 1742967774285,
"last_record_timestamp": 1742967774305,
"scan_id": "8ad3db69-f2d6-4f53-abd8-edcfd8bcaea4"
},
{
"path": "milestone/was_finding/2025-03-26/was_finding-1742967790057-87-9fb210fa-5481-4ac4-895a-3d9b62450062.json.gz",
"md5": "aa20d588c550ad683f790bc5721452a5",
"version": 1,
"num_updates": 3,
"num_deletes": 0,
"first_record_timestamp": 1742967785559,
"last_record_timestamp": 1742967785559,
"scan_id": "9fb210fa-5481-4ac4-895a-3d9b62450062"
}
]
}