whitehat-security/schemas/engagement.schema.json
tegwick beab2a04d1 Build authorization-gated tenancy evidence harness
Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a0260c-4067-7052-9647-ad000d576e38
2026-08-21 23:53:27 +02:00

31 lines
1.6 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "whitehat-engagement/v1",
"type": "object",
"additionalProperties": true,
"required": [
"engagement_id", "authorization_id", "authorizer", "approved_at", "expires_at",
"target", "target_owner", "environment", "source", "routes", "fixture_ids",
"credential_lane", "credential_role", "credential_max_ttl_seconds", "techniques",
"prohibited_techniques", "rate_limit_per_minute", "max_concurrency", "window_start",
"window_end", "operator_contact", "abort_contact", "posture_claim", "attacker_model",
"finding_destination", "target_owner_acknowledged_at"
],
"properties": {
"engagement_id": {"type": "string", "minLength": 1},
"authorization_id": {"type": "string", "minLength": 1},
"approved_at": {"type": "string", "format": "date-time"},
"expires_at": {"type": "string", "format": "date-time"},
"window_start": {"type": "string", "format": "date-time"},
"window_end": {"type": "string", "format": "date-time"},
"target_owner_acknowledged_at": {"type": "string", "format": "date-time"},
"environment": {"enum": ["fixture", "build", "staging", "production"]},
"routes": {"type": "array", "minItems": 1, "items": {"type": "string"}},
"fixture_ids": {"type": "array", "minItems": 1, "items": {"type": "string"}},
"techniques": {"type": "array", "minItems": 1, "items": {"type": "string"}},
"max_concurrency": {"const": 1},
"rate_limit_per_minute": {"type": "integer", "minimum": 1, "maximum": 60},
"finding_destination": {"const": "risk-nexus"}
}
}