電腦入侵防護分配建議APIComputerIntegrityMonitoringAssignmentsRecommendationsApiComputerLogInspectionAssignmentsRecommendationsApiPolicyIntrusionPreventionAssignmentsRecommendationsApiPolicyIntegrityMonitoringAssignmentsRecommendationsApiPolicyLogInspectionAssignmentsRecommendationsApi
這些類別的方法和函數返回的物件包含最新的建議和掃瞄資訊。以下的 JSON 代表返回物件的資料結構:
{
"assignedRuleIDs": [],
"recommendationScanStatus": "valid",
"lastRecommendationScanDate": "1562702362438",
"recommendedToAssignRuleIDs": [],
"recommendedToUnassignRuleIDs": []
}
政策入侵防護分配建議API政策完整性監控分配建議API政策日誌檢查分配建議API
當建議掃瞄執行時,它會為入侵防護、完整性監控和日誌檢查安全模組確定建議。因此,
ComputerIntrusionPreventionAssignmentsRecommendationsApi、ComputerIntegrityMonitoringAssignmentsRecommendationsApi 和 ComputerLogInspectionAssignmentsRecommendationsApi 的方法和功能會返回相同的日期和最後一次掃瞄的狀態值。例如,獲取您環境中所有電腦的列表(您只需要 ID,因此將
expand 參數設置為 none 以返回最少的信息):expand = api.Expand(api.Expand.none) computers_api = api.ComputersApi(api.ApiClient(configuration)) computers = computers_api.list_computers(api_version, expand=expand.list(), overrides=False)
對每台電腦防護,獲取應用的規則和建議的掃瞄結果:
computer_ips_assignments_recommendations_api = (
api.ComputerIntrusionPreventionRuleAssignmentsRecommendationsApi(api.ApiClient(configuration)))
intrusion_prevention_assignments = (
computer_ips_assignments_recommendations_api.list_intrusion_prevention_rule_ids_on_computer(
computer.id,
api_version,
overrides=False)
最後,提取上次掃瞄的日期。請注意,當沒有執行建議掃瞄時,該屬性為
None:reco_scan_info = list()
if intrusion_prevention_assignments.last_recommendation_scan_date is not None:
d = datetime.datetime.utcfromtimestamp(intrusion_prevention_assignments.last_recommendation_scan_date/1000)
reco_scan_info.append(d.strftime('%Y-%m-%d %H:%M:%S'))
else:
reco_scan_info.append("No scan on record")
要使用 API 執行建議掃瞄,請使用排程任務。另請參閱 API 參考中的 列出入侵防護規則 ID 操作。
確定建議掃瞄上次執行的時間
獲取最後一次 建議掃瞄 的日期,以確認您的電腦最近是否已被掃瞄。電腦可能未被掃瞄,例如,如果在建議掃瞄運行時它處於離線狀態。您可以運行一個腳本,以發現每台電腦上次掃瞄的時間。根據結果,您可以立即運行建議掃瞄。
請使用以下一般步驟來獲取一台或多台電腦的最後建議掃瞄日期:
步驟
- 建立一個
ComputersApi物件以獲取要檢查的電腦 ID。 - 建立一個
ComputerIntrusionPreventionAssignmentsRecommendationsApi物件,並使用它來列出入侵防護規則分配和建議。 - 從返回的
IntrusionPreventionAssignments物件中獲取上次掃瞄的日期。
範例:獲取所有電腦的最後建議掃瞄日期
以下範例會檢索所有電腦防護的列表,並確定最後一次推薦掃瞄的日期和狀態。這些資訊連同電腦防護主機名稱將以逗號分隔值 (CSV) 格式返回,可作為試算表打開。
# Include minimal information in the returned Computer objects
expand = api.Expand(api.Expand.none)
# Get the list of computers and iterate over it
computers_api = api.ComputersApi(api.ApiClient(configuration))
computers = computers_api.list_computers(api_version, expand=expand.list(), overrides=False)
computer_ips_assignments_recommendations_api = (
api.ComputerIntrusionPreventionRuleAssignmentsRecommendationsApi(api.ApiClient(configuration)))
for computer in computers.computers:
# Get the recommendation scan information
intrusion_prevention_assignments = (
computer_ips_assignments_recommendations_api.list_intrusion_prevention_rule_ids_on_computer(
computer.id,
api_version,
overrides=False))
reco_scan_info = list()
# Computer name
reco_scan_info.append(computer.host_name)
# Scan date
if intrusion_prevention_assignments.last_recommendation_scan_date is not None:
d = datetime.datetime.utcfromtimestamp(intrusion_prevention_assignments.last_recommendation_scan_date/1000)
reco_scan_info.append(d.strftime('%Y-%m-%d %H:%M:%S'))
else:
reco_scan_info.append("No scan on record")
# Scan status
reco_scan_info.append(intrusion_prevention_assignments.recommendation_scan_status)
# Add to the CSV string
csv += format_for_csv(reco_scan_info)
return csv
套用建議
API 提供對 建議掃瞄 結果的訪問,適用於電腦的完整性監控、入侵防護和日誌檢查。使用
ComputerIntrusionPreventionAssignmentsRecommendationsApi 物件來獲取電腦的 IntrusionPreventionAssignments 物件。IntrusionPreventionAssignments 物件包含並提供對該電腦建議的訪問:- 建議指派和未指派的入侵防護規則
- 掃瞄狀態
- 上次掃瞄發生時間
在您獲取規則建議後,您可以將它們應用到電腦防護政策,如將入侵防護規則新增到電腦防護政策範例所示。
當電腦防護尚未執行建議掃瞄時,
ComputerIntrusionPreventionAssignmentsRecommendationsApi 將對於規則 ID 和最後一次掃瞄事件返回 null。提供了與完整性監控和日誌檢查相似的類別:
- 完整性監控
電腦完整性監控任務建議API完整性監控指派
- 日誌檢查
電腦日誌檢查任務建議API日誌檢查分配
以下範例獲取電腦防護的入侵防護建議。
ip_recommendations_api = api.ComputerIntrusionPreventionRuleAssignmentsRecommendationsApi(api.ApiClient(configuration)) ip_assignments = None ip_assignments = ip_recommendations_api.list_intrusion_prevention_rule_ids_on_computer(computer_id, api_version, overrides=False) return ip_assignments.recommended_to_assign_rule_ids
另請參閱 API 參考中的 列出入侵防護規則 ID 操作。 有關 API 認證的資訊,請參閱 使用 伺服器與工作負載保護 認證。
