檢視次數:
請使用以下策略來提升您 API 和 SDK 呼叫的效能。

最小化電腦防護回應大小

當您描述列出搜尋電腦防護時,您可以指定返回的電腦防護物件中包含的資訊。當您只返回所需的資訊時,回應到達您的客戶端所需的時間會更少。
簡單值的電腦防護屬性總是包含在返回的電腦防護物件中。然而,您可以控制包含具有複雜值的屬性(這些值是其他物件)。以下 JSON 代表電腦防護物件的資料結構。複雜屬性的值由大括號符號{...}表示。
{
  "hostName": "string",
  "displayName": "string",
  "description": "string",
  "lastIPUsed": "string",
  "platform": "string",
  "groupID": 0,
  "policyID": 0,
  "assetImportanceID": 0,
  "relayListID": 0,
  "agentFingerPrint": "string",
  "applianceFingerPrint": "string",
  "lastAgentCommunication": 0,
  "lastApplianceCommunication": 0,
  "lastSendPolicyRequest": 0,
  "lastSendPolicySuccess": 0,
  "agentVersion": "string",
  "computerStatus": {...},
  "computerSettings": {...},
  "interfaces": {...},
  "biosUUID": "string",
  "azureARMVirtualMachineSummary": {...},
  "azureVMVirtualMachineSummary": {...},
  "ec2VirtualMachineSummary": {...},
  "noConnectorVirtualMachineSummary": {...},
  "vmwareVMVirtualMachineSummary": {...},
  "workspaceVirtualMachineSummary": {...},
  "esxsummary": {...},
  "ID": 0,
  "antiMalware": {...},
  "webReputation": {...},
  "firewall": {...},
  "intrusionPrevention": {...},
  "integrityMonitoring": {...},
  "logInspection": {...},
  "applicationControl": {...},
  "ESXSummary": {...},
  "SAP": {...}
}
例如,如果您需要電腦防護 ID 列表,您可以列出所有電腦防護並指定返回的 Computer 物件中不包含任何複雜屬性。如果您對代理狀態感興趣,請包含 computerStatus 屬性,而不包含其他複雜屬性。
警告
警告
預設情況下,所有屬性都包含在返回的電腦防護對象中。
ComputersApi 類別中描述、列出和搜尋電腦的方法或函數定義了一個 expand 參數,用於控制包含哪些屬性。expand 參數是一個字串值的列表。Expand 類別定義了可以包含在列表中的字串值。(有關字串值的列表,請參閱 API 參考中 Computers 的描述、列出和搜尋操作的 expand 參數說明。)
以下代碼來自範例中的電腦防護狀態報告指南,獲取包含電腦防護狀態屬性的電腦列表。
expand = api.Expand()
expand.add(api.Expand.computer_status)

computers_api = api.ComputersApi(api.ApiClient(configuration))
computers = computers_api.list_computers(api_version, expand=expand.list(), overrides=False)
在此範例中,電腦防護 物件返回的資訊類似以下 JSON:
{
  "hostName": "string",
  "displayName": "string",
  "description": "string",
  "lastIPUsed": "string",
  "platform": "string",
  "groupID": 0,
  "policyID": 0,
  "assetImportanceID": 0,
  "relayListID": 0,
  "agentFingerPrint": "string",
  "applianceFingerPrint": "string",
  "lastAgentCommunication": 0,
  "lastApplianceCommunication": 0,
  "lastSendPolicyRequest": 0,
  "lastSendPolicySuccess": 0,
  "agentVersion": "string",
  "computerStatus": {...},
  "biosUUID": "string",
  "ID": 0,
}
秘訣
秘訣
Expand
類別定義了幾個字串,使指定要包含的屬性變得更容易
Computer
物件(字串的確切名稱因 SDK 語言而異):
  • none: 僅包含簡單屬性值,不包含複雜屬性。This value significantly increases performance 當需要最少資訊時,例如電腦防護 ID,這是很有用的。
  • all: 包含所有屬性。這是預設值。
  • allVirtualMachineSummaries: 包含所有虛擬機器摘要屬性,例如 EC2、Azure、VMWare。
  • allSecurityModules: 包含所有安全模組屬性,例如惡意程式防護、入侵防護和 Application Control。
警告
警告
expand 參數的預設值是 all。如果您提供 null 或未提供參數值,將返回所有電腦防護資訊。

使用覆蓋參數

當您從 伺服器與工作負載保護 檢索許多大型物件時,僅包含被覆蓋的屬性值可以大幅減少返回物件的大小。許多 API 調用定義了一個 overrides 參數,該參數控制回應是僅包含在目標資源上配置的覆蓋,還是包含所有有效屬性。
秘訣
秘訣
如需詳細資訊,請參閱 關於覆蓋參數 指南。
例如,如果您需要所有政策的 ID,您可以使用 PoliciesApi 類別中列出政策的方法或函數,並將 overrides 設置為 true。當許多政策屬性是繼承的時候,檢索覆蓋可以顯著減少響應大小。無論 overrides 參數的值如何,ID 總是會返回。
policies_api = api.PoliciesApi(api.ApiClient(configuration))
policies_with_overrides = policies_api.list_policies(api_version, overrides=True)

直接配置規則分配

您可以使用以下類別為政策和電腦配置規則分配:
  • PolicyFirewallRuleAssignmentsApiComputerFirewallRuleAssignmentsApi
  • PolicyIntegrityMonitoringRuleAssignmentsRecommendationsApiComputerIntegrityMonitoringRuleAssignmentsRecommendationsApi
  • PolicyIntrusionPreventionRuleAssignmentsRecommendationsApiComputerIntrusionPreventionRuleAssignmentsRecommendationsApi
  • PolicyLogInspectionRuleAssignmentsRecommendationsApiComputerLogInspectionRuleAssignmentsRecommendationsApi
使用這些類別比使用Policy電腦防護物件的安全模組擴展物件來配置規則指派更具效能。例如,要指派防火牆規則,請使用PolicyFirewallRuleAssignmentsApi類別的方法或函數,將防火牆規則新增到特定的政策中。效能較低的指派規則方式是將規則新增到FirewallPolicyExtension物件,將該物件新增到Policy物件,然後使用PoliciesApi來修改政策。
有關這些類別功能的完整資訊,請參閱 API 參考中的 政策電腦 部分。

直接與單一設定互動

為了在與政策、電腦防護和系統設定互動時最小化回應大小,請直接與個別政策設定互動,而不是通過修改整個政策。
建立和配置政策中所述,您可以通過兩種方式與政策設置互動:
  • 使用 PoliciesApi 類別來檢索、修改或重置單一政策設定。回應包括一個 SettingValue 物件。
  • 使用 PoliciesApi 類別檢索或修改政策。回應包含一個 Policy 物件,其中包括一個 PolicySettings 物件。
一個包含字串值的 SettingValue 物件,比包含所有屬性值和設定值的 Policy 物件小得多。
同樣地,使用 PoliciesApi 類別直接與個別的預設策略設定互動,使用 ComputersApi 類別進行個別的電腦防護設定,並使用 SystemSettingsApi 類別進行個別的系統設定(請參閱 設定電腦以覆寫策略設定 伺服器與工作負載保護 系統設定)。

頁面您的搜尋結果

如果可能,從 伺服器與工作負載保護 檢索大量物件時,請分頁檢索結果,以避免過度佔用伺服器資源。如果您在執行搜尋時發現管理器效能下降,請重構您的程式碼以執行一系列返回較小結果集的搜尋。
如需詳細資訊,請參閱 搜尋資源 指南中的「限制搜尋結果和分頁」部分。