# SIEM フィールドリファレンス

このページでは、接続された SIEM に送信される際に、各 Aikido の課題および各アクティビティログエントリに含まれるフィールドについて説明します。

特定の SIEM を接続する方法については、[SIEM Connectors](https://help.aikido.dev/docs/docs-ja/miscellaneous-integrations/siem-connectors) を参照してください。

### ペイロード形式

各同期では JSON 配列が送信され、[課題の入力設定](https://help.aikido.dev/docs/docs-ja/miscellaneous-integrations/siem-connectors)に一致する課題ごとに 1 つのオブジェクトが含まれます。アクティビティログを有効にしている場合、各同期では新しいアクティビティログエントリごとに 1 つのオブジェクトも送信されます。フィールドはすべての SIEM コネクターで共通です。

アクティビティログエントリでは `data_type` が `activity_log` に設定されています。課題オブジェクトには `data_type` フィールドがないため、SIEM でこのフィールドを使って両者を区別してください。アクティビティログのフィールドについては、[アクティビティログのフィールド](#activity-log-fields)を参照してください。

### コアフィールド

| フィールド | 型 | 説明 |
|---|---|---|
| `id` | integer | 個々の課題の ID。 |
| `group_id` | integer | この課題が属する課題グループの ID。Aikido は、同じ根本的な課題に関連する発生をまとめてグループ化します。 |
| `attack_surface` | string | `frontend`、`backend`、`docker_container`、`cloud`、`cloud_instance` のいずれか。 |
| `status` | string | `open`、`ignored`、`snoozed`、`closed` のいずれか。 |
| `severity` | string | `critical`、`high`、`medium`、`low` のいずれか。 |
| `severity_score` | integer | 課題に対する Aikido の優先度スコア（1 から 100）。 |
| `type` | string | `open_source`、`leaked_secret`、`cloud`、`cloud_instance`、`docker_container`、`iac`、`sast`、`surface_monitoring`、`malware`、`eol`、`scm_security`、`ai_pentest`、`ai_code_analysis`、`mobile`、`license` のいずれか。 |
| `rule` | string または null | SAST、IaC、クラウド、サーフェスモニタリングの課題におけるルールのタイトル。その他の種類では null。 |
| `programming_language` | string または null | 影響を受けるファイルパスから検出されます（例: `JS`、`PHP`、`PY`、`Java`）。 |
| `how_to_fix` | string または null | 利用可能な場合、課題に対する Aikido の修正ガイダンス。 |

### 脆弱性フィールド

| フィールド | 型 | 説明 |
|---|---|---|
| `cve_id` | string または null | CVE ID。公開 CVE が存在しない場合は、Aikido の内部 CVE ID（例: `AIKIDO-2020-123`）。 |
| `cve_id_alias` | string または null | `cve_id` が Aikido の内部 CVE ID である場合の、関連する公開 CVE。 |
| `affected_package` | string または null | 影響を受けるパッケージ名（存在する場合）。 |
| `affected_file` | string または null | 影響を受けるファイルまたはターゲットのパス（存在する場合）。 |

### ロケーションフィールド

課題が検出された場所に対応するフィールドグループのみが設定され、それ以外は null になります。

| フィールド | 型 | 説明 |
|---|---|---|
| `code_repo_id`, `code_repo_name` | integer または null、string または null | ソースコードの課題におけるコードリポジトリ。 |
| `container_repo_id`, `container_repo_name` | integer または null、string または null | コンテナの課題におけるコンテナリポジトリ。 |
| `cloud_id`, `cloud_name` | integer または null、string または null | クラウドの課題におけるクラウドアカウント。 |
| `domain_id`, `domain_name` | integer または null、string または null | サーフェスモニタリングの課題におけるドメイン。 |
| `virtual_machine_id`, `virtual_machine_name` | integer または null、string または null | VM の課題における VM。 |

### ステータスとタイミングのフィールド

| フィールド | 型 | 説明 |
|---|---|---|
| `first_detected_at` | unix タイムスタンプ | 課題が最初に作成された日時。 |
| `ignored_at` | unix タイムスタンプまたは null | 課題が無視された日時（無視されている場合）。 |
| `closed_at` | unix タイムスタンプまたは null | 課題がクローズされた日時（クローズされている場合）。 |
| `sla_remediate_by` | unix タイムスタンプまたは null | 修正の SLA 期限（適用される場合）。 |
| `snooze_until` | unix タイムスタンプまたは null | 課題がスヌーズされている場合、スヌーズが期限切れになる日時。 |
| `snooze_reason` | string | 課題がスヌーズされている理由。スヌーズされていない場合は空文字列。 |
| `ignore_reasons` | array | 課題が無視されている理由。無視されていない場合は空配列。各エントリには `kind`（`manual_ignore`、`auto_ignore`、`rule_ignore`、`api_ignore` のいずれか）と、人が読める形式の `reason` が含まれます。 |

### 課題タイプのメタデータ

`issue_type_metadata` は一部の課題タイプにのみ含まれるオブジェクトで、課題の `type` に対応する以下のキーのうち最大 1 つが設定されます。

| キー | フィールド |
|---|---|
| `sast` | `start_line`, `end_line` |
| `cloud` | `resource_id`, `resource_name`, `resource_kind` |
| `surface_monitoring` | `cve_id`, `package_name`, `package_version`, `evidence`, `evidence_description`, `domain_target_url` |
| `open_source` | `installed_version`, `patched_versions`（array） |
| `eol` | `eol_since`（unix タイムスタンプまたは null）、`affected_version` |
| `leaked_secret` | `commit`, `line` |

### 例

```json
[
  {
    "id": 1,
    "group_id": 1,
    "attack_surface": "backend",
    "status": "open",
    "severity": "critical",
    "severity_score": 90,
    "type": "open_source",
    "rule": null,
    "cve_id": "AIKIDO-2020-123",
    "cve_id_alias": "CVE-2020-7598",
    "affected_package": "minimist",
    "affected_file": "package-lock.json",
    "first_detected_at": 1700489005,
    "code_repo_id": 1,
    "code_repo_name": "test-service",
    "container_repo_id": null,
    "container_repo_name": null,
    "cloud_id": null,
    "cloud_name": null,
    "domain_id": null,
    "domain_name": null,
    "virtual_machine_id": null,
    "virtual_machine_name": null,
    "ignored_at": null,
    "closed_at": null,
    "sla_remediate_by": 1700924603,
    "snooze_until": null,
    "snooze_reason": "",
    "ignore_reasons": [],
    "issue_type_metadata": {
      "open_source": {
        "installed_version": "4.2.0",
        "patched_versions": ["4.2.6"]
      }
    },
    "how_to_fix": "Upgrade package minimist to 4.2.6 or later.",
    "programming_language": "JS"
  }
]
```

## アクティビティログのフィールド

各アクティビティログエントリは、課題の無視や設定の変更など、Aikido の課題または設定に対して実行されたアクションを記録します。Aikido は新しいエントリを発生順に送信し、すでに送信済みのエントリは再送信しません。

| フィールド | 型 | 説明 |
|---|---|---|
| `data_type` | string | 常に `activity_log`。 |
| `id` | integer | アクティビティログエントリの ID。 |
| `timestamp` | unix タイムスタンプ | アクションが発生した日時。 |
| `comment` | string | アクションの人が読める形式の説明。 |
| `source` | string | アクションをトリガーしたもの。`manual`、`checklist`、`rule`、`auto`、`api` のいずれか。 |
| `action` | string | 実行されたアクション（例: `ignored`、`snoozed`、`closed`、`re_open`、`autofix_pr_created`）。 |
| `user_id` | integer または null | アクションを実行したユーザーの ID。`source` が `auto` または `api` の場合は null。 |
| `user_name` | string または null | アクションを実行したユーザーの名前。`source` が `auto` または `api` の場合は null。 |
| `issue_id` | integer | アクションが適用される個々の課題の ID。 |
| `grouped_issue_id` | integer | アクションが適用される課題グループの ID。 |

### アクティビティログのアクション

`action` は以下のいずれかです。

| カテゴリ | 値 |
|---|---|
| 課題のステータス | `snoozed`, `unsnoozed`, `ignored`, `auto_ignored`, `closed`, `re_open`, `adjust_severity`, `sla_dates_reset` |
| 課題の修正 | `autofix_pr_created`, `overwrite_license_type`, `license_score_contested` |
| コンプライアンスへのプッシュ | `drata_push`, `sprinto_push`, `thoropass_push` |
| エクスポート | `issues_exported`, `subdomains_exported` |
| リポジトリとコンテナ | `repo_activated`, `repo_deactivated`, `container_activated`, `container_deactivated`, `container_registry_activated`, `container_registry_deactivated` |
| 設定 | `autofix_settings_changed`, `autoship_settings_changed`, `autodeploy_repo_settings_changed`, `autodeploy_global_settings_changed`, `spending_limit_changed` |
| AI ペンテスト | `pentest_paused`, `pentest_resumed` |
| コード品質 | `code_quality_finding_ignored`, `code_quality_finding_unignored` |
| エンドポイント保護 | `protection_paused`, `protection_paused_all_devices`, `protection_resumed_all_devices` |

### アクティビティログの例

```json
[
  {
    "data_type": "activity_log",
    "id": 42,
    "timestamp": 1713586140,
    "comment": "Rick Astley manually ignored this issue",
    "source": "manual",
    "action": "ignored",
    "user_id": 1,
    "user_name": "Rick Astley",
    "issue_id": 10,
    "grouped_issue_id": 3
  }
]
```
