インテグレーションを公開するための要件
以下でサポートされています。
Google SecOps
SOAR
このドキュメントでは、Google Security Operations SOAR で統合を公開するための要件について説明します。前提条件、コーディング標準、アクション開発ガイドライン、JSON 形式のルール、エンティティ拡充のベスト プラクティス、Google Security Operations Marketplace への統合の送信プロセスが記載されています。これらの要件に準拠することで、統合の信頼性、保守性、他のユーザーによる検出可能性を高めることができます。
統合の要件
- Python 3.7: すべての統合を Python 3.7 で開発します。
- 統合の説明: 統合するプロダクトの明確な説明を含めます。
- アイコン
- SVG アイコン: このアイコンは、プラットフォームのインテグレーションのすべてのインスタンスに適用されます。
- PNG アイコン: この画像は Google SecOps Marketplace に表示されます。
- 統合カテゴリ: カテゴリを定義して、他のユーザーが Google SecOps Marketplace で統合をフィルタリングできるようにします。Google SecOps Marketplace の定義済みリストからカテゴリを選択します。
- 依存関係: 統合に外部ライブラリが必要な場合は、統合の設定でそれらを一覧表示します。
- 統合パラメータ: プロダクトへの接続を正常に行うために必要なすべてのパラメータと、明確な説明を含めます。
- マネージャー: コードの重複を避けるため、統合内の他のスクリプトから参照できる Python ファイルであるマネージャーを作成します。
-
Ping アクション: 接続を確認するには、Ping アクションを含めます。接続が成功した場合、結果は
true
を返します。このアクションはデフォルトで無効にする必要があります。ハンドブックでの使用を想定していません。 - Linux: 統合では CentOS 7 以降をサポートする必要があります。
アクションの要件
- アクションの説明: アクションの内容を明確に説明します。
- アクションの構造: 統合開発環境(IDE)のデフォルトのアクション テンプレートに従います。
- アクション パラメータ: アクションに関連するすべてのパラメータを説明とともに定義します。パラメータの型をアクションの要件と一致させます。
-
アラートのコンテキストでのアクションの実行: 該当する場合は、アラートのコンテキストで実行されるようにアクションを設計します。たとえば、
siemplify.target_entities
を使用して、ロジックの範囲を特定のエンティティ タイプ(URL など)に設定します。例については、カスタム アクションを作成するをご覧ください。 - ロギング: 複雑なアクションのログを追加し、すべての例外またはエラーを正しい重大度レベル(`info`、`warn`、`error`、`exception`)で記録します。
JSON の要件
- JSON 結果: データを返すアクションの場合、
add_result_json
を使用して JSON 結果を返します。 - JSON の例を追加: プレイブックの作成用に 式ビルダーにインポートできる JSON ファイルの例を追加します。この推奨事項により、JSON の結果値をハンドブックのプレースホルダとして使用できます。
エンティティを拡充する
統合されたプロダクトのデータを使用してエンティティを拡充する場合は、次のベスト プラクティスに従ってください。
- 拡充ステップを追加する: アクションの出力に関連するプロダクトのデータを含めます。
- 接頭辞を使用する: 競合を避けるため、エンリッチメント フィールド キーに接頭辞(通常はプロダクト名)を追加します。
- 例: ユーザーの姓名でエンティティを拡充するには、新しいフィールドに接頭辞として
Zoom
を追加します。entity_enrichment = {"first_name":"First Name", "last_name":"Last Name"} entity_enrichment = add_prefix_to_dict(entity_enrichment, "Zoom")
- 例: ユーザーの姓名でエンティティを拡充するには、新しいフィールドに接頭辞として
- エンティティを更新する:
entity.additional_properties.update()
を使用して、エンティティのプロパティに拡充データを追加します。 - アラートを更新する:
siemplify.update_entities(enriched_entities)
を使用して、更新されたエンティティをアラートに追加します。エンティティをクリックすると、詳細が表示されます。
統合を公開する
統合をすべての Google SecOps Marketplace ユーザーが利用できるようにするには、カスタマー サポートに連絡して、Marketplace チームによる審査を依頼してください。
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。