目次

コンピュータのリストを取得する(BashおよびPowerShell)

Workload Security が保護する(または検出した)コンピュータのリストを取得し、返されたデータにフォーカスを合わせて各コンピュータのセキュリティステータスを含めます。 [コンピュータのリスト] 操作を使用して、コンピュータのリストを取得します。オプションの expand クエリパラメータを使用すると、ステータス情報に集中できます。

コンピュータを一覧表示すると、初期設定ですべての使用可能なコンピュータ情報が返されます。 expand クエリパラメータを使用すると、対象の情報のみが返されます。少なくとも、各コンピュータの基本情報(コンピュータID、ポリシーID、プラットフォームなど)が返されます。

expand クエリ文字列を含めると、すべてのコンピュータ情報が返されます。

返される情報のカテゴリ サポートされる値 expand
最小情報 none
すべての情報 all (初期設定)
現在のステータス computerStatussecurityUpdatestasks
設定 computerSettings、 interfaces
セキュリティモジュールの設定 allSecurityModules (すべてのモジュール), antiMalware, applicationControl, firewall, integrityMonitoring, intrusionPrevention, logInspection, SAPwebReputation
仮想マシン情報 allVirtualMachineSummaries (すべての種類の仮想マシン), azureARMVirtualMachineSummary, azureVMVirtualMachineSummary, ec2VirtualMachineSummaryESXSummary, noConnectorVirtualMachineSummaryvcloudVMVirtualMachineSummary, vmwareVMVirtualMachineSummary, workspaceVirtualMachineSummary

開始前の準備

すでに環境を確認しておく必要がありますBashまたはPowerShellを使用してAPIを使用するように設定する

このレシピを完了するために必要な次の情報を収集します。

  • Workload SecurityのURL
  • APIキーの秘密鍵

バッシュ

  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 PATH>"

    たとえば、, $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

関連リソース