ワークロードセキュリティAPI
Workload Security API を使用すると、 NetApp の顧客と独立系ソフトウェア ベンダー (ISV) は、Workload Security を CMDB や他のチケット システムなどの他のアプリケーションと統合できます。
API アクセスの要件:
-
アクセスを許可するには、API アクセス トークン モデルが使用されます。
-
API トークンの管理は、管理者ロールを持つ Workload Security ユーザーによって実行されます。
APIドキュメント(Swagger)
最新の API 情報は、Workload Security にログインし、管理 > API アクセス に移動すると見つかります。 API ドキュメント リンクをクリックします。 API ドキュメントは Swagger ベースであり、API の簡単な説明と使用方法の情報を提供し、テナントで試用することができます。
|
Forensics Activity API を呼び出す場合は、cloudsecure_forensics.activities.v2 API を使用します。この API を複数回呼び出す場合は、呼び出しが並列ではなく順番に行われるようにしてください。複数の並列呼び出しにより、API がタイムアウトする可能性があります。 |
APIアクセストークン
Workload Security API を使用する前に、1 つ以上の API アクセス トークン を作成する必要があります。アクセス トークンは読み取り権限を付与します。各アクセス トークンの有効期限を設定することもできます。
アクセス トークンを作成するには:
-
*管理 > APIアクセス*をクリックします
-
*+APIアクセストークン*をクリックします
-
*トークン名*を入力してください
-
*トークンの有効期限*を指定します
|
トークンは、作成プロセス中にクリップボードにコピーして保存するためにのみ使用できます。トークンは作成後に取得することはできないため、トークンをコピーして安全な場所に保存することを強くお勧めします。トークン作成画面を閉じる前に、「API アクセス トークンのコピー」ボタンをクリックするように求められます。 |
トークンを無効化、有効化、取り消しできます。無効になっているトークンを有効にすることができます。
トークンは、顧客の観点から API への汎用アクセスを許可し、独自のテナントの範囲内で API へのアクセスを管理します。
アプリケーションは、ユーザーが正常に認証してアクセスを承認するとアクセス トークンを受け取り、ターゲット API を呼び出すときにアクセス トークンを資格情報として渡します。渡されたトークンは、トークンの所有者が API にアクセスし、承認時に付与されたスコープに基づいて特定のアクションを実行することを承認されたことを API に通知します。
アクセス トークンが渡される HTTP ヘッダーは X-CloudInsights-ApiKey: です。
たとえば、ストレージ アセットを取得するには、次を使用します。
curl https://<Workload Security tenant>/rest/v1/cloudsecure/activities -H 'X-CloudInsights-ApiKey: <API_Access_Token>' ここで、_<API_Access_Token>_ は API アクセス キーの作成時に保存したトークンであり、_<Workload Security Tenant>_ は Workload Security 環境のテナント URL です。
詳細情報は、管理 > API アクセス の API ドキュメント リンクで確認できます。
API経由でデータを抽出するスクリプト
Workload Security エージェントには、要求された時間範囲をより小さなバッチに分割することで、v2 API への並列呼び出しを容易にするエクスポート スクリプトが含まれています。
スクリプトは /opt/netapp/cloudsecure/agent/export-script にあります。同じディレクトリにある README ファイルに使用方法が記載されています。
スクリプトを呼び出すコマンドの例を次に示します。
python3 data-export.py --tenant_url <Workload Security tenant> --access_key %ACCESS_KEY% --path_filter "<dir path>" --user_name "<user>" --from_time "01-08-2024 00:00:00" --to_time "31-08-2024 23:59:59" --iteration_interval 12 --num_workers 3
主なパラメータ: - --iteration_interval 12
: 要求された時間範囲を 12 時間間隔に分割します。 - --num_workers 3
: 3 つのスレッドを使用してこれらの間隔を並列に取得します。