ビュー:
APIおよびSDK呼び出しのパフォーマンスを向上させるには、次の方法を使用します。

コンピュータの応答サイズを最小にする

あなたが説明,リスト、および検索返されるファイルに含まれる情報を指定できます。Computerオブジェクト。必要な情報のみを返すと、対応がクライアントに届くまでの時間が短縮されます。
単純な値であるコンピュータのプロパティは、常に返されるプロパティに含まれます。Computerオブジェクト。ただし、複雑な値 (値は別のオブジェクト) を持つプロパティを含めることはできます。次のJSONは、Computerオブジェクト。複合プロパティの値は中括弧記号で表されます。{...}
{
  "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プロパティであり、その他の複雑なプロパティはありません。
警告
警告
初期設定では、返されるComputerオブジェクトにはすべてのプロパティが含まれます。
の方法または機能ComputersApiコンピュータの記述、一覧表示、および検索を行うクラス。expand含めるプロパティを制御するパラメータです。はexpandパラメータは文字列値のリストです。はExpandクラスは、リストに含めることができる文字列値を定義します。 (文字列値のリストについては、expandパラメータの説明を参照してください。コンピュータAPIレファレンス/参照情報を参照してください。)
次のコードは、コンピュータのステータスに関するレポートガイドは、computer statusプロパティを含むコンピュータのリストを取得します。
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)
この例では、Computerオブジェクトは次の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,
}
ヒント
ヒント
The
Expand
クラスは、含めるプロパティを指定しやすくするためのいくつかの文字列を定義します
Computer
オブジェクト (文字列の正確な名前はSDKの言語によって異なります):
  • [なし:] 単純なプロパティ値のみを含め、複雑なプロパティは含めません。 [この値により、パフォーマンスが大幅に向上します。] であり、コンピュータIDなどの最小限の情報が必要な場合に便利です。
  • [すべて:] すべてのプロパティを含みます。これが初期設定値です。
  • [allVirtualMachineSummaries:] EC2、Azure、VMWareなど、仮想マシンの概要プロパティがすべて含まれます。
  • [すべてのセキュリティモジュール:] 不正プログラム対策、侵入防御、アプリケーションコントロールなど、すべてのセキュリティモジュールのプロパティが含まれます。
警告
警告
の初期設定値expandパラメータはall。提供する場合nullパラメータに値を指定しない場合、またはパラメータに値を指定しない場合は、すべてのコンピュータ情報が返されます。

オーバーライドパラメータを使用する

Server & Workload Protectionから多数の大きなオブジェクトを取得する場合、オーバーライドされたプロパティ値のみを含めると、返されるオブジェクトのサイズを大幅に削減できます。多くのAPI呼び出しでは、overrides対象のリソースで設定されたオーバーライドのみを対応に含めるか、すべての有効なプロパティを含めるかを制御するパラメータです。
ヒント
ヒント
詳細については、 Overridesパラメータについてガイドします。
たとえば、すべてのポリシーのIDが必要な場合は、PoliciesApiを含むポリシーをリストするクラスoverridesに設定true 。ポリシーのプロパティの多くが継承されている場合、オーバーライドを取得すると、対応サイズを大幅に削減できます。このIDは、overridesパラメータの値に関係なく常に返されます。
policies_api = api.PoliciesApi(api.ApiClient(configuration))
policies_with_overrides = policies_api.list_policies(api_version, overrides=True)

ルールの割り当てを直接設定する

次のクラスを使用して、ポリシーとコンピュータに対するルールの割り当てを設定できます。
  • PolicyFirewallRuleAssignmentsApiそしてComputerFirewallRuleAssignmentsApi
  • PolicyIntegrityMonitoringRuleAssignmentsRecommendationsApiそしてComputerIntegrityMonitoringRuleAssignmentsRecommendationsApi
  • PolicyIntrusionPreventionRuleAssignmentsRecommendationsApiそしてComputerIntrusionPreventionRuleAssignmentsRecommendationsApi
  • PolicyLogInspectionRuleAssignmentsRecommendationsApiそしてComputerLogInspectionRuleAssignmentsRecommendationsApi
これらのクラスを使用すると、セキュリティモジュール拡張オブジェクトを使用してルールの割り当てを設定するよりも効率的ですPolicyまたはComputerオブジェクト。たとえば、ファイアウォールルールを割り当てるには、PolicyFirewallRuleAssignmentsApi特定のポリシーにファイアウォールルールを追加するクラス。ルールを割り当てる方法としては、パフォーマンスが低下します。FirewallPolicyExtensionオブジェクトに追加します。Policyオブジェクトを使用します。PoliciesApiをクリックしてポリシーを変更します。
これらのクラスの機能の詳細については、ポリシーそしてコンピュータのセクションをレファレンス/参照情報してください。

単一の設定を直接操作する

ポリシー、コンピュータ、およびシステム設定を操作する際の対応サイズを最小限に抑えるには、ポリシーを変更するのではなく、個々のポリシー設定を直接操作します。
ポリシーの作成と構成で説明されているように、ポリシー設定と対話する方法は2つあります。
  • を使用します。PoliciesApiクラスを使用して、単一のポリシー設定を取得、変更、またはリセットします。対応にはSettingValueオブジェクト。
  • を使用します。PoliciesApiポリシーを取得または変更します。対応にはPolicyオブジェクト。PolicySettingsオブジェクト。
ASettingValue文字列値を含むオブジェクトは、Policyこのオブジェクトには、ポリシーのすべてのプロパティ値と設定値が含まれます。
同様に、PoliciesApiクラスを使用して個々の初期設定のポリシー設定を直接操作するには、ComputersApi個々のコンピュータ設定のクラスを選択し、SystemSettingsApi個々のシステム設定のクラス (「ポリシーを上書きするようにコンピュータを設定するそして Server & Workload Protection システム設定の構成)。

検索結果のページング

Server & Workload Protection から大量のオブジェクトを取得する場合は、サーバリソースに負担がかからないように、可能な場合はページ単位で検索結果を取得します。検索の実行時にManagerのパフォーマンスが低下することがわかった場合は、コードをリファクタリングして、一連の検索を実行し、より小さな結果セットを返します。
詳細については、リソースの検索ガイドの「検索結果の制限とページング」セクションを参照してください。