How to use an erd template.
- 01主要エンティティを特定する
アセット、脆弱性、脅威、インシデント、アラート、ユーザーなど、サイバーセキュリティプラットフォームの主要な対象を特定します。
- 02リレーションシップを定義する
エンティティ間の関係を整理します。たとえば、1つのアセットには複数の脆弱性が存在し、インシデントは脅威を起点として発生する場合があります。
- 03属性とキーを追加する
各エンティティのフィールド(例:重大度、検知日、CVSSスコア)を指定し、整合性を保つために主キーと外部キーを定義します。
- 04調整して書き出す
ジェネレーターで図を細かく調整し、画像として書き出すか、チーム向けのドキュメントに埋め込みます。
Questions about erd templates
サイバーセキュリティプラットフォームのデータベーススキーマには、通常どのエンティティを含めますか?
一般的なエンティティには、アセット(デバイス、アプリケーション)、脆弱性(CVE、弱点)、脅威(攻撃パターン)、インシデント(セキュリティイベント)、アラート(検知情報)、ユーザー(分析担当者、管理者)などがあります。修復タスク、スキャナー、連携ログなどを追加する場合もあります。
脆弱性とアセットの関係をどのようにモデル化しますか?
AssetVulnerabilityなどの中間テーブルを使った多対多リレーションシップを定義し、発見日、重大度の上書き、緩和状況などのコンテキストを持たせます。これにより、1つのアセットに複数の脆弱性を関連付け、1つの脆弱性を複数のアセットに適用できます。
サイバーセキュリティのデータベーススキーマは正規化すべきですか?
データの整合性を保ち、重複を避けるため、特にマスターデータ(アセット、脆弱性)は正規化することを推奨します。一方、SIEMログのように大量かつ高速に発生するイベントデータでは、部分的な非正規化やNoSQL方式のほうが高い性能を得られる場合があります。
変化する脅威インテリジェンスフィードに合わせて、スキーマをどのように変更しますか?
柔軟性を重視して設計します。動的なプロパティにはエンティティ・アトリビュート・バリュー(EAV)パターンを使い、生データフィードはJSONカラムに保存するか、別の「カスタム属性」テーブルで管理します。スキーマにバージョンを付け、データソースの追加に合わせて定期的に見直します。
生成したERDをドキュメントに利用できますか?
もちろんです。ジェネレーターでは、明確で編集可能な図を作成し、PNG、SVG、PDFとして書き出せます。アーキテクチャ文書、セキュリティプレイブック、オンボーディングガイドに埋め込んで、チーム内でデータモデルを共有できます。