85 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
			
		
		
	
	
			85 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
{
 | 
						|
  "$id": "https://stella-ops.org/schemas/events/scanner.report.ready@1.json",
 | 
						|
  "$schema": "http://json-schema.org/draft-07/schema#",
 | 
						|
  "type": "object",
 | 
						|
  "required": ["eventId", "kind", "tenant", "ts", "scope", "payload"],
 | 
						|
  "properties": {
 | 
						|
    "eventId": {"type": "string", "format": "uuid"},
 | 
						|
    "kind": {"const": "scanner.report.ready"},
 | 
						|
    "tenant": {"type": "string"},
 | 
						|
    "ts": {"type": "string", "format": "date-time"},
 | 
						|
    "scope": {
 | 
						|
      "type": "object",
 | 
						|
      "required": ["repo", "digest"],
 | 
						|
      "properties": {
 | 
						|
        "namespace": {"type": "string"},
 | 
						|
        "repo": {"type": "string"},
 | 
						|
        "digest": {"type": "string"}
 | 
						|
      }
 | 
						|
    },
 | 
						|
    "payload": {
 | 
						|
      "type": "object",
 | 
						|
      "required": ["verdict", "delta", "links"],
 | 
						|
      "properties": {
 | 
						|
        "reportId": {"type": "string"},
 | 
						|
        "generatedAt": {"type": "string", "format": "date-time"},
 | 
						|
        "verdict": {"enum": ["pass", "warn", "fail"]},
 | 
						|
        "summary": {
 | 
						|
          "type": "object",
 | 
						|
          "properties": {
 | 
						|
            "total": {"type": "integer", "minimum": 0},
 | 
						|
            "blocked": {"type": "integer", "minimum": 0},
 | 
						|
            "warned": {"type": "integer", "minimum": 0},
 | 
						|
            "ignored": {"type": "integer", "minimum": 0},
 | 
						|
            "quieted": {"type": "integer", "minimum": 0}
 | 
						|
          },
 | 
						|
          "additionalProperties": false
 | 
						|
        },
 | 
						|
        "delta": {
 | 
						|
          "type": "object",
 | 
						|
          "properties": {
 | 
						|
            "newCritical": {"type": "integer", "minimum": 0},
 | 
						|
            "newHigh": {"type": "integer", "minimum": 0},
 | 
						|
            "kev": {"type": "array", "items": {"type": "string"}}
 | 
						|
          },
 | 
						|
          "additionalProperties": false
 | 
						|
        },
 | 
						|
        "links": {
 | 
						|
          "type": "object",
 | 
						|
          "properties": {
 | 
						|
            "ui": {"type": "string", "format": "uri"},
 | 
						|
            "rekor": {"type": "string", "format": "uri"}
 | 
						|
          },
 | 
						|
          "additionalProperties": false
 | 
						|
        },
 | 
						|
        "quietedFindingCount": {"type": "integer", "minimum": 0},
 | 
						|
        "report": {"type": "object"},
 | 
						|
        "dsse": {
 | 
						|
          "type": "object",
 | 
						|
          "required": ["payloadType", "payload", "signatures"],
 | 
						|
          "properties": {
 | 
						|
            "payloadType": {"type": "string"},
 | 
						|
            "payload": {"type": "string"},
 | 
						|
            "signatures": {
 | 
						|
              "type": "array",
 | 
						|
              "items": {
 | 
						|
                "type": "object",
 | 
						|
                "required": ["keyId", "algorithm", "signature"],
 | 
						|
                "properties": {
 | 
						|
                  "keyId": {"type": "string"},
 | 
						|
                  "algorithm": {"type": "string"},
 | 
						|
                  "signature": {"type": "string"}
 | 
						|
                },
 | 
						|
                "additionalProperties": false
 | 
						|
              }
 | 
						|
            }
 | 
						|
          },
 | 
						|
          "additionalProperties": false
 | 
						|
        }
 | 
						|
      },
 | 
						|
      "additionalProperties": true
 | 
						|
    }
 | 
						|
  },
 | 
						|
  "additionalProperties": false
 | 
						|
}
 |