はじめに
本稿では、「Deep Instinct」を運用するにあたって、REST APIにより端末管理を効率化するテクニックを紹介します。
Deep Instinctとは
「Deep Instinct」は、ディープラーニングを活用したエンドポイントセキュリティのソリューションです。既知の脅威だけではなく、未知の脅威も99%以上の高い検知率で予防することができます。脅威の検知、隔離というプロセスが全て自動化されているため、運用管理の工数を削減することができます。
下図が「Deep Instinct」の概要イメージですが、クラウド上の「D-Appliance」と接続することが前提となっています。また、管理コンソールと呼ばれる設定や検知された情報の参照も、「D-Appliance」へのアクセスが必要です。
そのため、どの端末にエージェントが導入されたか、また、検知された情報を確認するには、このクラウド上のサービスへ都度アクセスする必要があります。
また、端末情報の管理もこちらで行うため、追加で情報を付与したり、人事異動や使用者変更等に伴う付与情報の一斉変更をしたり、といったことが必要となってきます。
ところが、現状の「D-Appliance」の管理コンソール上では、端末へユーザーが付与出来る情報はコメント欄のみとなっており、更新は1台ずつしか実施出来ない仕様となっております。
REST APIを使うことのメリット
こういった課題への対応として、「Deep Instinct」にはAPIコネクターとしてREST APIでの連携が実装されており、これを利用して、端末情報の取得、更新といった運用を効率的に行うことが出来るようになっております。
「Deep Instinct」の詳細については、下記の弊社サイトにて案内しています。
ディープラーニングを活用したサイバー攻撃対策「Deep Instinct」
REST APIを使うための設定手順
まずは、REST APIを使うために設定を行います。
管理コンソールにログインし、「Settings」―「Integration & Notification」―「API Connectors」を選択します。
「API Connectors」画面が表示されますので、「Add Connector」をクリックします。
「Add API Connector」画面が表示されますので、それぞれ以下の情報を入力し、「Create」をクリックします。
「Name」:TEST(任意のコネクター名)
「Tenants」:All Tenants
「Permission」:Read and Remendiation
以下のようにConectorが作成されれば準備は完了です。
ここで作成された「API Key」は次の作業で使用するため、値をコピーしておきます。
REST APIを使ってみる
さっそくREST APIを使ってみましょう。
Deep Instinctでは、REST APIの実行サイトも用意されており、まずはこちらで試してみましょう。
接続している管理コンソールのサイトの「/api/v1/」にアクセスすることでAPIサイトへアクセス出来ます。
例)https://xxxx.deepinstinctweb.com/api/v1/
画面上部の「Authorize」をクリックします。
「Available authorizations」画面が表示されますので、「Value」欄に先程コピーした「API Key」を入力し、「Authorize」をクリックします。
認証が成功すれば、以下のような画面が表示されますので、「Close」をクリックします。
では、端末に関する操作をしてみましょう。Deep Instinctでは「Devices」がそれにあたります。
まずは端末情報の取得を行います。
端末情報の取得は一番上の「GET /devices/」をクリックします。
「Try it out」をクリックします。
「Execute」をクリックします。
実行結果として、「Response body」に取得した端末情報が表示されます。また、「Download」をクリックすることで、ファイルをダウンロードすることが出来ます。
次に、コメント欄の更新を行います。コメント欄への操作は一番下の「PUT /devices/{device_id}/comment」をクリックします。
「Try it out」をクリックします。
コメントの内容、端末の情報(DeepInstinctで管理されているID)を入力し、「Execute」をクリックします。
実行した内容と実行結果が表示されます。
レスポンスコードが「204」であることから、コメントのアップデートが成功したことが確認出来ます。
実際に更新された内容を管理コンソールから確認した結果です。
このようにREST APIを利用して、コメントを更新することが出来ました。
上記で紹介したWeb画面からでは1台ずつしか更新出来ませんが、こういった情報をもとに、複数端末の情報を更新するバッチの作成が容易に行うことが出来、Deep Instinctでの端末管理を効率的に行うことが可能です。
以下にCSVファイルを読み込んで複数端末のコメント欄を更新するバッチファイルのサンプルソースを提示しますので参考にしてみて下さい。
また、それ以外にも検知されたイベントの取得など、Deep InstinctにREST APIを連携することでより運用しやすくなります。この機会に利用してみてはいかがでしょうか。
REST APIを利用した複数端末のコメント情報を更新するバッチファイルのサンプルソース
※「# プロパティ」以下にある「$Url」と「$ApiKey」は、正しい情報を記載ください。
# 例外(try catch)を捕まえるために「stop」にする # モジュール(自身)が存在するフォルダーに移動する function Main() { # ———+———+———+———+ return $rc # RestAPI呼び出し [object]$Headers = $null # ———+———+———+———+ RestAPI([String]$Api_, [String]$Method_, [string]$ApiKey_) { RestAPI([String]$Api_, [String]$Method_) { RestAPI([string]$ApiKey_) { RestAPI() { SetApiKey() { # ———+———+———+———+ # ———+———+———+———+ [int]Exec() { # Body $this.StatusCode = 0 return $this.StatusCode $rc = Main |
CSVファイルとしては、以下のようにデバイスIDと更新するコメントの内容を記載したものを用意します。
id,comment 1111,”コメント更新1” 1112,”コメント更新2” |
執筆者プロフィール
-
入社以来、インフラの技術支援などを担当。その後、客先常駐業務がほとんどでようやく社内での業務に復帰。
新しい業務の担当にもなり、いろいろなことにチャレンジしたいと考えています。
この執筆者の最新記事
- iDC&セキュリティ2022.12.26Deep Instinctの端末管理をREST APIで効率化する
- ITコラム2018.12.17HAProxyを使用したプロキシサーバを構築してみた