Workload Securityが保護 (または検出) しているコンピュータのリストを取得し、返されるデータに各コンピュータのセキュリティステータスを含めます。コンピュータのリストを取得するには、コンピュータのリスト操作を使用します。ステータス情報に焦点を当てるには、オプションのexpandクエリパラメータを使用します。
コンピュータを一覧表示すると、デフォルトで利用可能なすべてのコンピュータ情報が返されます。expand クエリパラメータを使用すると、関心のある情報のみが返されます。最低限、各コンピュータの基本情報 (コンピュータID、ポリシーID、プラットフォームなど) が返されます。
expandクエリ文字列を含めない場合、すべてのコンピュータ情報が返されます。
返される情報のカテゴリ
expandのサポートされている値
最小情報
なし
すべての情報
すべて(デフォルト)
現在のステータス
computerStatus, securityUpdates,tasks
設定
コンピューター設定,インターフェース
セキュリティモジュールの設定
allSecurityModules(すべてのモジュールの情報を含む)、antiMalwareapplicationControlファイアウォールintegrityMonitoringintrusionPreventionlogInspectionSAPwebReputation
仮想マシン情報
allVirtualMachineSummaries(すべての種類の仮想マシンの情報を含む)、azureARMVirtualMachineSummaryazureVMVirtualMachineSummaryec2VirtualMachineSummaryESXSummarynoConnectorVirtualMachineSummaryvcloudVMVirtualMachineSummaryvmwareVMVirtualMachineSummaryworkspaceVirtualMachineSummary

開始前の準備

お使いの環境がBashまたはPowerShellを使用してAPIを利用するように設定されていることを既に確認しているはずです。
このレシピを完了するために必要な次の情報を収集します。
  • Workload SecurityのURL
  • APIキーの秘密鍵

Bash

  1. ターミナルまたは使用しているコマンドラインツールを開きます。
  2. 次のコマンドを入力してリクエストの詳細を保存します。<YOUR URL>をWorkload SecurityのURLに、<YOUR SECRET KEY>をAPIキーのシークレットに置き換えてください。
    • url=<YOUR URL>
      例えば、url=https://cloudone.trendmicro.com
    • secret=<YOUR SECRET KEY>
      例えば、secret=5C58EADA-04BC-4ABC-45CF-B72925A0B674:aFBgpPV8eJQGaY2Dk0LmyQMD7nUGvyIDfIbIQo8Zgm8=
    • expand=computerStatus
  3. 応答データを保存するJSONファイルを指定するには、次のコマンドを入力し、<FILE PATH>を作成するファイルに置き換えます。ファイル名には.json拡張子を指定してください。
    file=<FILE PATH>
    例えば、file=~/Documents/computers_status.jsonはファイルをホームディレクトリの下に保存します。
  4. リクエストを送信するには、次のコマンドを入力します。
    curl -X GET "$url/api/computers?expand=$expand" -H "api-secret-key: $secret" -H "api-version: v1" > $file
    返されたJSONをファイルに書き込む代わりに、ターミナルで読みやすい形式で表示するには、cURLコマンドの結果をjqにパイプします。上記のコマンドでは、> $file| jq .に置き換えます。
  5. WebブラウザでJSONファイルを開きます。WebブラウザはJSONを読み取り可能にフォーマットする必要があります。コンピュータの配列を表すJSONコードが表示されます。各コンピュータは、次の例のようなコードで表されます。
    {
        "hostName": "gui2-336",
        "displayName": "",
        "description": "",
        "lastIPUsed": "127.0.1.1",
        "platform": "Unknown",
        "groupID": 0,
        "policyID": 1,
        "relayListID": 0,
        "lastSendPolicyRequest": 1566335191390,
        "agentVersion": "0.0.0.0",
        "computerStatus": {
            "agentStatus": "inactive",
            "agentStatusMessages": [
                "Unmanaged (Unknown)"
            ]
        },
        "ID": 201
    }
    computerStatusキーにはステータス情報が含まれています。この例では、コンピュータは保護されていません。
  6. オプションとして、expand変数の値を変更して、返されるJSONにどのように影響するかを確認してみてください。例えば、expand=computerPropertiesと入力して、curlコマンドを再実行してください。

PowerShell

  1. PowerShellを起動します。
  2. TLS 1.2を使用するには、次のコマンドを入力します.TLS 1.2は、セキュリティで保護された接続を確立するためにManagerで必要となります。
    [Net.ServicePointManager]::SecurityProtocol += [Net.SecurityProtocolType]::Tls12
  3. 次のコマンドを入力してリクエストの詳細を保存します。<YOUR URL>をWorkload SecurityのURLに、<YOUR SECRET KEY>をAPIキーのシークレットに置き換えてください。
    • $url = "<YOUR URL>"
    例えば、url=https://cloudone.trendmicro.com
    • $secret = "<YOUR API KEY SECRET>"
    例えば、$secret="5C58EADA-04BC-4ABC-45CF-B72725A0B674:aFBgpPV8eJQGaY2Dk0LmyQMD7nUGvyIDfIbIQo8Zgm8="
    • $headers = @{api-version = v1; api-secret-key = $secret}
    • $expand="computerStatus"
  4. 次のコマンドを入力して、レスポンスデータを保存するJSONファイルを指定します。<FILE PATH>を作成するファイルに置き換えてください。.json拡張子のファイル名を指定します。
    $file="<ファイルパス>"
    例えば、$file="$HOME\Documents\computers_status.json"はホームディレクトリの下にファイルを保存します。
  5. リクエストを送信するには、次のコマンドを入力します。
    Invoke-RestMethod "$url/api/computers?expand=$expand" -Headers $headers -OutFile $file
  6. WebブラウザでJSONファイルを開きます。WebブラウザはJSONを読み取り可能にフォーマットする必要があります。コンピュータの配列を表すJSONコードが表示されます。各コンピュータは、次の例のようなコードで表されます。
    {
        "hostName": "gui2-336",
        "displayName": "",
        "description": "",
        "lastIPUsed": "127.0.1.1",
        "platform": "Unknown",
        "groupID": 0,
        "policyID": 1,
        "relayListID": 0,
        "lastSendPolicyRequest": 1566335191390,
        "agentVersion": "0.0.0.0",
        "computerStatus": {
            "agentStatus": "inactive",
            "agentStatusMessages": [
                "Unmanaged (Unknown)"
            ]
        },
        "ID": 201
    }
    computerStatusキーにはステータス情報が含まれています。この例では、コンピュータは保護されていません。
  7. オプションとして、expand変数の値を変更して、返されるJSONにどのように影響するかを確認してみてください。例えば、$expand="computerProperties"と入力してInvoke-RestMethodコマンドを再実行します。
次の点に注意してください。
  • テキストエディタでJSONファイルを開くと、コードは1行に表示され、読みにくいものになります。WebブラウザはJSONを読みやすくするように書式を設定する傾向があります。ブラウザでJSONが自動的にフォーマットされない場合は、ブラウザプラグインをインストールすることをお勧めします。
  • 複数の値をexpandクエリパラメータに含めるには、APIコールのURLに各値のexpandクエリ文字列を含める必要があります。例えば、?expand=computerStatus&expand=computerProperties

関連リソース