Build authorization-gated tenancy evidence harness
Assistant: codex Assistant-Model: gpt-5.6-sol Assistant-Session: 01a0260c-4067-7052-9647-ad000d576e38
This commit is contained in:
parent
2c8e1d41ad
commit
beab2a04d1
32 changed files with 1816 additions and 11 deletions
31
schemas/engagement.schema.json
Normal file
31
schemas/engagement.schema.json
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
"$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"}
|
||||
}
|
||||
}
|
||||
|
||||
22
schemas/run-report.schema.json
Normal file
22
schemas/run-report.schema.json
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "whitehat-run/v1",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"schema_version", "run_id", "evidence_class", "engagement_id", "authorization_id",
|
||||
"target", "target_revision", "posture_claim", "attacker_model", "started_at", "ended_at",
|
||||
"outcome", "attempted_operations", "cleanup", "credential_revocation", "probes",
|
||||
"limitations", "assurance_statement"
|
||||
],
|
||||
"properties": {
|
||||
"schema_version": {"const": "whitehat-run/v1"},
|
||||
"evidence_class": {"enum": ["fixture", "target"]},
|
||||
"outcome": {"enum": ["pass", "finding", "inconclusive", "aborted"]},
|
||||
"attempted_operations": {"type": "integer", "minimum": 0},
|
||||
"probes": {"type": "array"},
|
||||
"limitations": {"type": "array", "items": {"type": "string"}},
|
||||
"assurance_statement": {"type": "string", "minLength": 1}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue