ワークロードセキュリティAPI
ワークロードセキュリティAPIにより、ネットアップのお客様と独立系ソフトウェアベンダー(ISV)は、ワークロードセキュリティをCMDBや他のチケット発行システムなどの他のアプリケーションと統合できます。
API アクセスの要件:
-
API アクセストークンモデルを使用してアクセスが許可されます。
-
APIトークン管理は、管理者ロールを持つワークロードセキュリティユーザが実行します。
API ドキュメント( Swagger )
最新のAPI情報は、Workload Securityにログインし、* Admin > API Access に移動することで確認できます。[API Documentation] リンクをクリックします。APIドキュメントはSwaggerベースです。APIの簡単な説明と使用方法が記載されており、テナントで試すことができます。
Forensics Activity APIを呼び出す場合は、cloudsecure_forensics.activities.* v2 * APIを使用します。このAPIに複数の呼び出しを行う場合は、呼び出しが並列ではなく連続して実行されるようにしてください。複数の並行呼び出しが発生すると、APIがタイムアウトする可能性があります。 |
API アクセストークン
ワークロードセキュリティAPIを使用する前に、1つ以上の* APIアクセストークン*を作成する必要があります。アクセストークンは読み取り権限を付与します。各アクセストークンの有効期限を設定することもできます。
アクセストークンを作成するには:
-
[Admin] > [API Access] をクリックします
-
[*+API アクセストークン *] をクリックします
-
「 * トークン名 * 」と入力します
-
トークンの有効期限 * を指定します
トークンは、クリップボードにコピーして作成プロセス中に保存する場合にのみ使用できます。トークンは作成後に取得できないため、トークンをコピーして安全な場所に保存することを強くお勧めします。トークンの作成画面を閉じる前に、 [API アクセストークンのコピー ] ボタンをクリックするよう求められます。 |
トークンを無効化、有効化、および取り消しできます。無効になっているトークンを有効にできます。
トークンは、顧客の視点からAPIへの汎用アクセスを付与し、APIへのアクセスを自身のテナントのスコープで管理します。
アプリケーションは、ユーザがアクセスの認証と許可に成功した後、ターゲット API を呼び出すときにアクセストークンをクレデンシャルとして渡します。渡されたトークンは、トークンのベアラに対して API へのアクセスが許可されていることを API に通知し、許可中に付与されたスコープに基づいて特定のアクションを実行します。
アクセストークンが渡される HTTP ヘッダーは * X-CloudInsights - apiKey : * です
たとえば、次のようにしてストレージアセットを取得します。
curl https://<tenant_host_name>/rest/v1/cloudsecure/activities -H 'X-CloudInsights-ApiKey: <API_Access_Token>' _<API_Access_Token> _ は、 API アクセスキーの作成時に保存したトークンです。
詳細については、 _API Documentation_link の * Admin > API Access * を参照してください。
API経由でデータを抽出するスクリプト
ワークロードセキュリティエージェントには、要求された時間範囲を小さなバッチに分割することで、v2 APIへの並行呼び出しを容易にするエクスポートスクリプトが含まれています。
スクリプトは_/ opt/ NetApp / cloudsecure/agent/export-script_にあります。使用方法については、同じディレクトリにあるREADMEファイルを参照してください。
スクリプトを呼び出すコマンドの例を次に示します。
python3 data-export.py --tenant_url <tenant id>.cs01.cloudinsights.netapp.com --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つのスレッドを使用して、これらの間隔を並行してフェッチします。