Security Operations とのサードパーティ統合のための REST APIs

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む4読むのに数分
  • Security Operations ベースシステムには、顧客とパートナーが既存の Security Operations 展開と簡単に統合できるようにする一連の Scripted REST APIs が含まれています。この API を使用すると、システムの外部からデータを収集し (たとえば、VirusTotal からデータを受信するには Python スクリプトを使用)、インスタンスに送り返すことができます。

    ほぼあらゆる言語 (たとえば Python) で記述されたスクリプトを API とともに使用して、顧客固有のプロセスを実行できます。スクリプトは、外部向けの HTTP Post 呼び出しが可能な言語で記述する必要があります。たとえば、Java アプリケーションがある場合は、java.net.HttpUrlConnection パッケージなどのライブラリを使用して HTTP 呼び出しを構築し、JSON 文字列をメッセージの本文として渡す必要があります。

    API は、システムの外部で収集されたデータ追加する目的でのみ使用されます。たとえば、VT Python スクリプトを入力して VT からデータを受信した場合、そのデータを SN インスタンスに送り返すことができます。

    認証

    API 定義内のすべての操作で、 Scripted REST APIs 操作機能。アクセスするには、次の場所に移動します。 システム Web サービス > スクリプト済み Web サービス > スクリプト済み REST APIs SecOps Integration Capabilities API を見つけます。
    図 : 1. スクリプト済み REST サービス
    スクリプト済み REST サービス

    ユーザーとユーザーのドメインは、API のコンテキストですぐに利用できます。レコードは、ユーザー、確立する監査パス、実現しているドメイン分離に関連付けることができます。また、特定のユーザーとして認証されているため、 GlideRecordSecure を使用して、データへの不正アクセスを防止できます。

    認証

    Security Operations アプリケーション外部のユーザーからレコード作成プロセスを保護するには、sn_sec_cmn.api_write ロールが必要です。このロールを持つユーザーのみが API にアクセスできます。

    構成要求パラメーター

    次の要求パラメーターを使用できます。
    名前 デフォルト 説明
    ignore_mandatory_fields false true に設定すると、必須フィールドに入力されていない場合でもレコードが保持されます。
    include_wrap false true に設定すると、インスタンス提供の Scripted REST APIs 用標準ラッパーが応答に含まれます。
    simple_response false true に設定すると、操作が成功したかどうかのみが応答に含まれます。

    エラー応答

    次のエラー応答が発生する可能性があります。
    エラーメッセージ 発生する条件 ソリューション
    アクセス権が不十分です ユーザーに sn_sec_cmn.api_write ロールがない場合。 ユーザーにロールを追加してください。
    無効な投稿本文 要求本文が空または空のオブジェクトの場合。 API 定義に準拠します。
    提供されたフィールドがありません 保持するよう指定されたデータフィールドが空の場合。 API 定義に準拠します。
    必須フィールドがありません:x、y、z (Mandatory fields missing: x,y,z) 必須フィールドに入力されていない場合。 ターゲットテーブルのテーブル定義に従うか、[ignore_mandatory_fields] を true に設定してください。
    レコードを保持できません 解析されたレコードを保持できない場合。 GlideRecord insert() が失敗しました。詳細な分析が必要です。
    不明なエラー 既知のエラーパスに従わなかった場合。 詳細な分析が必要です。

    CI 拡張のユースケース

    サードパーティスクリプトを使用して、CI 拡張を構成アイテム拡張 [sn_sec_cmn_ci_enrichment_result] テーブルに書き込むことができます。拡張レコードは、サードパーティソースからのレコードに関する詳細情報を提供する既存の機能に基づいています。

    以下に CI 拡張ユースケースのサンプル要求と応答を示します。

    図 : 2. CI 拡張の作成要求
    CI 拡張:作成要求
    図 : 3. CI 拡張の作成応答
    CI 拡張:作成応答

    観測事象の拡張ユースケース

    サードパーティスクリプトを使用して、観測事象拡張を観測事象拡張結果 [sn_ti_observable_enrichment_result] テーブルに書き込むことができます。拡張レコードは、サードパーティソースからのレコードに関する詳細情報を提供する既存の機能に基づいています。

    以下に観測事象拡張ユースケースのサンプル要求と応答を示します。

    図 : 4. 観測事象拡張の作成要求
    観測事象の拡張:作成要求
    図 : 5. 観測事象拡張の作成応答
    観測事象の拡張:作成応答
    注:
    既存のレコードを拡張するだけでなく、Security Operations 拡張データマッピングを使用して、既存の拡張マッピングの enrichment_mapping_id と、それに対応する、マッピングプロセスで解析できる raw_data 文字列を渡すことで、テーブルに新しいレコードを追加することもできます。

    脅威のルックアップのユースケース

    サードパーティスクリプトを使用して、脅威のルックアップの結果を脅威のルックアップの結果 [sn_ti_lookup_result] テーブルに書き込むことができます。ルックアップレコードは、サードパーティソースからのレコードに関する詳細情報を提供する既存の機能に基づいています。

    以下に脅威のルックアップのユースケースのサンプル要求と応答を示します。

    図 : 6. 脅威のルックアップの作成要求
    脅威のルックアップの作成要求
    図 : 7. 脅威のルックアップの作成応答
    脅威のルックアップの作成応答