feat: Initialize Zastava Webhook service with TLS and Authority authentication
- Added Program.cs to set up the web application with Serilog for logging, health check endpoints, and a placeholder admission endpoint. - Configured Kestrel server to use TLS 1.3 and handle client certificates appropriately. - Created StellaOps.Zastava.Webhook.csproj with necessary dependencies including Serilog and Polly. - Documented tasks in TASKS.md for the Zastava Webhook project, outlining current work and exit criteria for each task.
This commit is contained in:
		
							
								
								
									
										52
									
								
								samples/api/reports/report-sample.dsse.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								samples/api/reports/report-sample.dsse.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,52 @@ | ||||
| { | ||||
|   "report": { | ||||
|     "reportId": "report-3def5f362aa475ef14b6", | ||||
|     "imageDigest": "sha256:deadbeef", | ||||
|     "generatedAt": "2025-10-19T08:28:09.3699267+00:00", | ||||
|     "verdict": "blocked", | ||||
|     "policy": { | ||||
|       "revisionId": "rev-1", | ||||
|       "digest": "27d2ec2b34feedc304fc564d252ecee1c8fa14ea581a5ff5c1ea8963313d5c8d" | ||||
|     }, | ||||
|     "summary": { | ||||
|       "total": 1, | ||||
|       "blocked": 1, | ||||
|       "warned": 0, | ||||
|       "ignored": 0, | ||||
|       "quieted": 0 | ||||
|     }, | ||||
|     "verdicts": [ | ||||
|       { | ||||
|         "findingId": "finding-1", | ||||
|         "status": "Blocked", | ||||
|         "ruleName": "Block Critical", | ||||
|         "ruleAction": "Block", | ||||
|         "score": 40.5, | ||||
|         "configVersion": "1.0", | ||||
|         "inputs": { | ||||
|           "reachabilityWeight": 0.45, | ||||
|           "baseScore": 40.5, | ||||
|           "severityWeight": 90, | ||||
|           "trustWeight": 1, | ||||
|           "trustWeight.NVD": 1, | ||||
|           "reachability.runtime": 0.45 | ||||
|         }, | ||||
|         "quiet": false, | ||||
|         "sourceTrust": "NVD", | ||||
|         "reachability": "runtime" | ||||
|       } | ||||
|     ], | ||||
|     "issues": [] | ||||
|   }, | ||||
|   "dsse": { | ||||
|     "payloadType": "application/vnd.stellaops.report+json", | ||||
|     "payload": "eyJyZXBvcnRJZCI6InJlcG9ydC0zZGVmNWYzNjJhYTQ3NWVmMTRiNiIsImltYWdlRGlnZXN0Ijoic2hhMjU2OmRlYWRiZWVmIiwiZ2VuZXJhdGVkQXQiOiIyMDI1LTEwLTE5VDA4OjI4OjA5LjM2OTkyNjcrMDA6MDAiLCJ2ZXJkaWN0IjoiYmxvY2tlZCIsInBvbGljeSI6eyJyZXZpc2lvbklkIjoicmV2LTEiLCJkaWdlc3QiOiIyN2QyZWMyYjM0ZmVlZGMzMDRmYzU2NGQyNTJlY2VlMWM4ZmExNGVhNTgxYTVmZjVjMWVhODk2MzMxM2Q1YzhkIn0sInN1bW1hcnkiOnsidG90YWwiOjEsImJsb2NrZWQiOjEsIndhcm5lZCI6MCwiaWdub3JlZCI6MCwicXVpZXRlZCI6MH0sInZlcmRpY3RzIjpbeyJmaW5kaW5nSWQiOiJmaW5kaW5nLTEiLCJzdGF0dXMiOiJCbG9ja2VkIiwicnVsZU5hbWUiOiJCbG9jayBDcml0aWNhbCIsInJ1bGVBY3Rpb24iOiJCbG9jayIsInNjb3JlIjo0MC41LCJjb25maWdWZXJzaW9uIjoiMS4wIiwiaW5wdXRzIjp7InJlYWNoYWJpbGl0eVdlaWdodCI6MC40NSwiYmFzZVNjb3JlIjo0MC41LCJzZXZlcml0eVdlaWdodCI6OTAsInRydXN0V2VpZ2h0IjoxLCJ0cnVzdFdlaWdodC5OVkQiOjEsInJlYWNoYWJpbGl0eS5ydW50aW1lIjowLjQ1fSwicXVpZXQiOmZhbHNlLCJzb3VyY2VUcnVzdCI6Ik5WRCIsInJlYWNoYWJpbGl0eSI6InJ1bnRpbWUifV0sImlzc3VlcyI6W119", | ||||
|     "signatures": [ | ||||
|       { | ||||
|         "keyId": "scanner-report-signing", | ||||
|         "algorithm": "hs256", | ||||
|         "signature": "s3qnWeRsYs+QA/nO84Us8G2xjZcvphc2P7KnOdTVwQs=" | ||||
|       } | ||||
|     ] | ||||
|   } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user