feat: Implement vulnerability token signing and verification utilities
	
		
			
	
		
	
	
		
	
		
			Some checks failed
		
		
	
	
		
			
				
	
				Docs CI / lint-and-preview (push) Has been cancelled
				
			
		
		
	
	
				
					
				
			
		
			Some checks failed
		
		
	
	Docs CI / lint-and-preview (push) Has been cancelled
				
			- Added VulnTokenSigner for signing JWT tokens with specified algorithms and keys. - Introduced VulnTokenUtilities for resolving tenant and subject claims, and sanitizing context dictionaries. - Created VulnTokenVerificationUtilities for parsing tokens, verifying signatures, and deserializing payloads. - Developed VulnWorkflowAntiForgeryTokenIssuer for issuing anti-forgery tokens with configurable options. - Implemented VulnWorkflowAntiForgeryTokenVerifier for verifying anti-forgery tokens and validating payloads. - Added AuthorityVulnerabilityExplorerOptions to manage configuration for vulnerability explorer features. - Included tests for FilesystemPackRunDispatcher to ensure proper job handling under egress policy restrictions.
This commit is contained in:
		@@ -1,56 +1,56 @@
 | 
			
		||||
{
 | 
			
		||||
  "$id": "https://stella-ops.org/schemas/notify/notify-event@1.json",
 | 
			
		||||
  "$schema": "http://json-schema.org/draft-07/schema#",
 | 
			
		||||
  "title": "Notify Event Envelope",
 | 
			
		||||
  "type": "object",
 | 
			
		||||
  "required": ["eventId", "kind", "tenant", "ts", "payload"],
 | 
			
		||||
  "properties": {
 | 
			
		||||
    "eventId": {"type": "string", "format": "uuid"},
 | 
			
		||||
    "kind": {
 | 
			
		||||
      "type": "string",
 | 
			
		||||
      "description": "Event kind identifier (e.g. scanner.report.ready).",
 | 
			
		||||
      "enum": [
 | 
			
		||||
        "scanner.report.ready",
 | 
			
		||||
        "scanner.scan.completed",
 | 
			
		||||
        "scheduler.rescan.delta",
 | 
			
		||||
        "attestor.logged",
 | 
			
		||||
        "zastava.admission",
 | 
			
		||||
        "feedser.export.completed",
 | 
			
		||||
        "vexer.export.completed"
 | 
			
		||||
      ]
 | 
			
		||||
    },
 | 
			
		||||
    "version": {"type": "string"},
 | 
			
		||||
    "tenant": {"type": "string"},
 | 
			
		||||
    "ts": {"type": "string", "format": "date-time"},
 | 
			
		||||
    "actor": {"type": "string"},
 | 
			
		||||
    "scope": {
 | 
			
		||||
      "type": "object",
 | 
			
		||||
      "properties": {
 | 
			
		||||
        "namespace": {"type": "string"},
 | 
			
		||||
        "repo": {"type": "string"},
 | 
			
		||||
        "digest": {"type": "string"},
 | 
			
		||||
        "component": {"type": "string"},
 | 
			
		||||
        "image": {"type": "string"},
 | 
			
		||||
        "labels": {"$ref": "#/$defs/stringMap"},
 | 
			
		||||
        "attributes": {"$ref": "#/$defs/stringMap"}
 | 
			
		||||
      },
 | 
			
		||||
      "additionalProperties": false
 | 
			
		||||
    },
 | 
			
		||||
    "payload": {
 | 
			
		||||
      "type": "object",
 | 
			
		||||
      "description": "Event specific body; see individual schemas for shapes.",
 | 
			
		||||
      "additionalProperties": true
 | 
			
		||||
    },
 | 
			
		||||
    "attributes": {"$ref": "#/$defs/stringMap"}
 | 
			
		||||
  },
 | 
			
		||||
  "additionalProperties": false,
 | 
			
		||||
  "$defs": {
 | 
			
		||||
    "stringMap": {
 | 
			
		||||
      "type": "object",
 | 
			
		||||
      "patternProperties": {
 | 
			
		||||
        ".*": {"type": "string"}
 | 
			
		||||
      },
 | 
			
		||||
      "additionalProperties": false
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
{
 | 
			
		||||
  "$id": "https://stella-ops.org/schemas/notify/notify-event@1.json",
 | 
			
		||||
  "$schema": "http://json-schema.org/draft-07/schema#",
 | 
			
		||||
  "title": "Notify Event Envelope",
 | 
			
		||||
  "type": "object",
 | 
			
		||||
  "required": ["eventId", "kind", "tenant", "ts", "payload"],
 | 
			
		||||
  "properties": {
 | 
			
		||||
    "eventId": {"type": "string", "format": "uuid"},
 | 
			
		||||
    "kind": {
 | 
			
		||||
      "type": "string",
 | 
			
		||||
      "description": "Event kind identifier (e.g. scanner.report.ready).",
 | 
			
		||||
      "enum": [
 | 
			
		||||
        "scanner.report.ready",
 | 
			
		||||
        "scanner.scan.completed",
 | 
			
		||||
        "scheduler.rescan.delta",
 | 
			
		||||
        "attestor.logged",
 | 
			
		||||
        "zastava.admission",
 | 
			
		||||
        "conselier.export.completed",
 | 
			
		||||
        "excitor.export.completed"
 | 
			
		||||
      ]
 | 
			
		||||
    },
 | 
			
		||||
    "version": {"type": "string"},
 | 
			
		||||
    "tenant": {"type": "string"},
 | 
			
		||||
    "ts": {"type": "string", "format": "date-time"},
 | 
			
		||||
    "actor": {"type": "string"},
 | 
			
		||||
    "scope": {
 | 
			
		||||
      "type": "object",
 | 
			
		||||
      "properties": {
 | 
			
		||||
        "namespace": {"type": "string"},
 | 
			
		||||
        "repo": {"type": "string"},
 | 
			
		||||
        "digest": {"type": "string"},
 | 
			
		||||
        "component": {"type": "string"},
 | 
			
		||||
        "image": {"type": "string"},
 | 
			
		||||
        "labels": {"$ref": "#/$defs/stringMap"},
 | 
			
		||||
        "attributes": {"$ref": "#/$defs/stringMap"}
 | 
			
		||||
      },
 | 
			
		||||
      "additionalProperties": false
 | 
			
		||||
    },
 | 
			
		||||
    "payload": {
 | 
			
		||||
      "type": "object",
 | 
			
		||||
      "description": "Event specific body; see individual schemas for shapes.",
 | 
			
		||||
      "additionalProperties": true
 | 
			
		||||
    },
 | 
			
		||||
    "attributes": {"$ref": "#/$defs/stringMap"}
 | 
			
		||||
  },
 | 
			
		||||
  "additionalProperties": false,
 | 
			
		||||
  "$defs": {
 | 
			
		||||
    "stringMap": {
 | 
			
		||||
      "type": "object",
 | 
			
		||||
      "patternProperties": {
 | 
			
		||||
        ".*": {"type": "string"}
 | 
			
		||||
      },
 | 
			
		||||
      "additionalProperties": false
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user