このページのトピック

ポリシーをコンピュータに割り当てる(BashおよびPowerShell)

ポリシー設定に従ってコンピュータが保護されるように、コンピュータにポリシーを割り当てます。たとえば、 Workload Securityに追加されたばかりのコンピュータ、またはポリシーが割り当てられていないことが検出されたコンピュータにポリシーを割り当てます。

ポリシーを割り当てるには、 [コンピュータの変更] 操作を使用します。

始める前に

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

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

  • Workload SecurityのURL

  • APIキーの秘密鍵

  • ポリシーを割り当てるコンピュータのID。

  • 割り当てるポリシーのID。

ポリシーまたはコンピュータのIDがわからない場合は、 検索ポリシー および の[コンピュータのリストの取得] レシピを使用して取得できます。

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=

  3. 次のコマンドを入力してコンピュータのIDを保存し、 <YOUR COMPUTER ID> をコンピュータのIDに置き換えます。

    computerID=<YOUR COMPUTER ID>

    例えば、 computerID=51

  4. 次のコマンドを入力してポリシーのIDを保存し、 <YOUR POLICY ID> をコンピュータのIDに置き換えます。

    policyID=<YOUR POLICY ID>

    例えば、 policyID=1

  5. 次のコマンドを入力して、レスポンスデータを保存するJSONファイルを指定し、 <FILE PATH> を作成するファイルに置き換えます。拡張子が.jsonのファイル名を指定します。

    file=<FILE PATH>

    例えば、 file=~/Documents/computer_modify.json

  6. 要求を送信するには、次のコマンドを入力します。

    curl -X POST "$url/api/computers/$computerID" -H "api-secret-key: $secret" -H "api-version: v1" -H "Content-Type: application/json" -d "{ \"policyID\": \"$policyID\" }" > $file

    返されたJSONを端末で読み取り可能な形式で出力するには(ファイル), に書き込むのではなく、cURLコマンドの結果を jqにパイプします。上記のコマンドで、 > $file| jq .に置き換えます。

  7. WebブラウザでJSONファイルを開きます。(Webブラウザは、JSONを読み取り可能にするようにフォーマットする必要があります。)次の例のように、IDとpolicyIDに予期される値を持つコンピュータを表すJSONコードが表示されます。

    {
        hostName: "testcomputer",
        displayName: "my test computer",
        description: "",
        lastIPUsed: "",
        platform: "Windows",
        groupID: 0,
        policyID: 1,
        relayListID: 1,
        lastSendPolicyRequest: 1568653868230,
        agentVersion: "12.0.0.563",
        computerStatus: {...},
        computerSettings: {...},
        ID: 51,
        antiMalware: {...},
        webReputation: {...},
        sensingMode: {...},
        firewall: {...},
        intrusionPrevention: {...},
        integrityMonitoring: {...},
        logInspection: {...},
        applicationControl: {...}
    }

例を簡潔にするために、複数のプロパティ(オブジェクトなど)で構成される値は {...}として表されます。結果にすべての情報が表示されます。

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; 'Content-Type' = "application/json"}

  4. 次のコマンドを入力してコンピュータのIDを保存し、 <YOUR COMPUTER ID> をコンピュータのIDに置き換えます。

    $computerID = "<YOUR COMPUTER ID>"

    例えば、 $computerID = "51"

  5. 次のコマンドを入力してポリシーのIDを保存し、 <YOUR POLICY ID> をコンピュータのIDに置き換えます。

    $policyID = "<YOUR POLICY ID>"

    例えば、 $policyID = "1"

  6. 次のコマンドを入力して、レスポンスデータを保存するJSONファイルを指定し、 <FILE PATH> を作成するファイルに置き換えます。拡張子が.jsonのファイル名を指定します。

    $file="<FILE PATH>"

    例えば、 $file="$HOME\Documents\policy_search.json"

  7. 要求を送信するには、次のコマンドを入力します。

    Invoke-RestMethod -Method 'Post' -Uri "$url/api/computers/$computerID" -Headers $headers -Body @"
    {"policyID": "$policyID"}
    "@ -OutFile $file

    エラーメッセージ The underlying connection was closed: An unexpected error occurred on a sendが表示されたら、PowerShellを終了して、PowerShellを再度開いて、手順を繰り返し実行してください。

  8. WebブラウザでJSONファイルを開きます。(Webブラウザは、JSONを読み取り可能にするようにフォーマットする必要があります。)次の例のように、IDとpolicyIDに予期される値を持つコンピュータを表すJSONコードが表示されます。

    {
        hostName: "testcomputer",
        displayName: "my test computer",
        description: "",
        lastIPUsed: "",
        platform: "Windows",
        groupID: 0,
        policyID: 1,
        relayListID: 1,
        lastSendPolicyRequest: 1568653868230,
        agentVersion: "12.0.0.563",
        computerStatus: {...},
        computerSettings: {...},
        ID: 51,
        antiMalware: {...},
        webReputation: {...},
        sensingMode: {...},
        firewall: {...},
        intrusionPrevention: {...},
        integrityMonitoring: {...},
        logInspection: {...},
        applicationControl: {...}
    }

    例を簡潔にするために、複数のプロパティ(オブジェクトなど)で構成される値は {...}として表されます。結果にすべての情報が表示されます。

メモ

  • テキストエディタでJSONファイルを開くと、コードは1行に表示され、読みにくいものになります。WebブラウザはJSONを読みやすくするように書式を設定する傾向があります。ブラウザでJSONが自動的にフォーマットされない場合は、ブラウザプラグインをインストールすることをお勧めします。

  • 返されるコンピュータオブジェクトには、ポリシーに設定されたものやコンピュータに適用されたオーバーライドなど、コンピュータに適用されているすべての設定が含まれます。レスポンスにオーバーライドのみを含めるには、 ?overrides=true>を要求内のURLに追加します(例: $url/api/computers/$computerID?overrides=true)。

関連リソース