はじめに
このドキュメントでは、エンドポイント向けCisco Advanced Malware Protection(AMP)について説明します。Cisco AMP for Endpointsには、アプリケーションプログラミングインターフェイス(API)が付属しています。これにより、必要に応じて、導入されている AMP for Endpoints からデータを取得し、それらのデータを操作できます。
この記事では、API の基本機能について説明します。この記事の例では Windows 7 エンドポイントが使用されています。
著者:Matthew Franks、Nazmul Rajib、Cisco TACエンジニア
APIクレデンシャルの生成と削除
AMP for Endpoint API を使用するには、API クレデンシャルを設定する必要があります。 AMPコンソールを使用してクレデンシャルを作成するには、次の手順に従います。
ステップ1:コンソールにログインし、Accounts > API Credentialsの順に移動します。
ステップ2:New API Credentialをクリックして、新しいキーセットを作成します。
ステップ3:アプリケーション名を入力します。[Scope] で [Read-only] または [Read & Write] を選択します。
注:読み取りおよび書き込みスコープのAPIクレデンシャルでは、エンドポイントで重大な問題を引き起こす可能性のあるCisco AMP for Endpointsの設定を変更できます。 Cisco AMP for Endpoints コンソールに組み込まれている一部の入力保護は、API には適用されません。
ステップ4:Createボタンをクリックします。[API Key Details] が表示されます。この情報の一部は画面を離れると使用できなくなるため、保存してください。
注:APIクレデンシャル(APIクライアントIDおよびAPIキー)により、他のプログラムでCisco AMP for Endpointsデータを取得および変更できます。これは、ユーザ名およびパスワードと機能的には同等であるため、そのように取り扱う必要があります。
注意:APIクレデンシャルが表示されるのは1回だけです。クレデンシャルが不明になった場合、新しいクレデンシャルを作成する必要があります。
アプリケーションの API クレデンシャルが漏えいした疑いがある場合、その API クレデンシャルを削除し、新しい API クレデンシャルを作成します。 APIクレデンシャルを削除すると、古いクレデンシャルを使用しているクライアントがロックアウトされるため、新しいクレデンシャルで更新します。
API のバージョンおよび現在のオプション
現在、AMP for Endpoints APIには、バージョン0とバージョン1の2つのバージョンがあります。バージョン1には、バージョン0に対する追加機能があります。バージョン 1 のドキュメンテーションは、ここにあります。 この情報は、バージョン1を使用して取得できます。
- コンピュータ
- コンピュータ アクティビティ
- イベント
- イベント タイプ
- ファイル一覧
- ファイル一覧項目
- グループ
- ポリシー
- バージョン
ドキュメント内の関連コマンドをクリックすると、その使用例が表示されます。
API コマンドの詳細および例
各 API コマンドには類似する情報が含まれます。各 API コマンドは、curl コマンドに基本的に分解できます。
curl -o yourfilename.json https://clientID:APIKey@api.amp.cisco.com/v1/whatyouwanttodo
-oオプションを付けてcurlコマンドを使用すると、出力をファイルに保存できます。この場合、ファイル名は「yourfilename.json」です。
ヒント: .jsonファイルの詳細については、ここを参照してください。
curl コマンドでの次の手順は、@ 記号の前にクレデンシャルがあるアドレスを設定することです。APIクレデンシャルを生成すると、clientIDとAPIKeyがわかるので、コマンドのこのセクションは次に示すリンクのようになります。
https://538e8b8203a48cc5c7fa:a190c911-8ca4-45fa-8740-e384ef2d3d5b@
バージョン番号と実行する内容を追加します。この例では、GET /v1/computersオプションを実行します。完全なコマンドは次のようになります。
curl -o computers.json https://538e8b8203a48cc5c7fa:a190c911-8ca4-45fa-8740-e384ef2d3d5b@api.amp.cisco.com/v1/computers
コマンドを実行した後、コマンドを開始したディレクトリに computers.json ファイルがダウンロードされたことが分かるはずです。
注:Curlはオンラインで入手でき、Windowsを含む多くのプラットフォーム用にコンパイルされています(通常はWin32 – 汎用バージョンを使用します)。
ファイルを開くと、すべてのデータが 1 行で表示されます。 適切な形式で表示したい場合は、ブラウザプラグインをインストールしてJSONとしてフォーマットし、ファイルをブラウザで開くことができます。これにより、使用できるコンピュータの情報が表示されますが、以下のようなデータが有用です。
connector_guid、hostname、active、links、connector_version、operating_system、internal_ips、external_ip、group_guid、network_addresses、policy guid、policy name。
{
version: "v1.0.0",
metadata: {
links: {
self: "https://api.amp.cisco.com/v1/computers"
},
results: {
total: 4,
current_item_count: 4,
index: 0,
items_per_page: 500
}
},
data: [
{
connector_guid: "abcdef-1234-5678-9abc-def123456789",
hostname: "test.cisco.com",
active: true,
links: {
computer: "https://api.amp.cisco.com/v1/computers/abcdef-1234-5678-9abc-def123456789",
trajectory: "https://api.amp.cisco.com/v1/computers/abcdef-1234-5678-9abc-def123456789/trajectory",
group: "https://api.amp.cisco.com/v1/groups/abcdef-1234-5678-9abc-def123456789"
},
connector_version: "4.4.2.10200",
operating_system: "Windows 7, SP 1.0",
internal_ips: [
"10.1.1.2",
" 192.168.1.2",
" 192.168.2.2",
" 169.254.245.1"
],
external_ip: "1.1.1.1",
group_guid: "abcdef-1234-5678-9abc-def123456789",
network_addresses: [
{
mac: "ab:cd:ef:01:23:45",
ip: "10.1.1.2"
},
{
mac: "bc:de:f0:12:34:56",
ip: "192.168.1.2"
},
{
mac: "cd:ef:01:23:45:67",
ip: "192.168.2.2"
},
{
mac: "de:f0:12:34:56:78",
ip: "169.254.245.1"
}
],
policy: {
guid: "abcdef-1234-5678-9abc-def123456789",
name: "Protect Policy"
}
ここまで実際の基本例を見てきました。各種コマンド オプションを使用して、環境のデータを取得および操作できます。
関連情報
テクニカル サポートとドキュメント - Cisco Systems