[roadmap] Add agent package signing provenance#44
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 156b20066d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| }) | ||
| }); | ||
| if let Some(object) = summary.as_object_mut() { | ||
| for (key, value) in [ |
There was a problem hiding this comment.
Include agent release gaps in gap filters
When a review package only has the new agent-release supply-chain gaps, these keys are added to gap_summary_json and rendered in the gap groups, but regulatory_review_has_open_gaps / regulatory_review_has_critical_gaps still enumerate only the older gap keys. In that scenario the has_open_gaps=true or has_critical_gaps=true list filters in apply_regulatory_review_gap_filters_* will omit the package even though the UI shows open/critical agent artifact gaps.
Useful? React with 👍 / 👎.
Problemstellung und Ziel
ISCY hat Zero-Trust-Agent-Onboarding, Deployment-Artefakte und Fleet-Governance bereits im Rust/Axum-Runtime. Dieser PR ergaenzt den naechsten Roadmap-Schritt: vorhandene Agent-/Deployment-Artefakte werden als pruefbare Release-Artefakte mit Manifest, SHA-256, Signaturstatusmodell und Release-Provenance sichtbar, ohne produktive Signierschluessel oder externe PKI einzufuehren.
Geaenderte Funktionen
Betroffene Dateien
.github/workflows/ci.ymldocker-compose.ymlrust/iscy-backend/Dockerfilerust/iscy-backend/src/agent_release_store.rsrust/iscy-backend/src/db_admin.rsrust/iscy-backend/src/lib.rsrust/iscy-backend/src/main.rsrust/iscy-backend/src/report_store.rsrust/iscy-backend/tests/http_tests.rsCHANGELOG.mddocs/ISCY_Handbuch.mddocs/ISCY_Handbuch.pdfdocs/ISCY_STRATEGIC_ROADMAP.mddocs/ZERO_TRUST_AGENT.mddocs/GUI_SCREENSHOTS.mdDatenbankmigrationen
0036_rust_agent_release_artifact_provenancefuer SQLite und PostgreSQL.agent_release_artifact,agent_artifact_signature,agent_release_provenance,agent_artifact_verification_event.Neue oder geaenderte API-Endpunkte
GET /api/v1/agents/artifactsGET /api/v1/agents/artifacts/{artifact_id}POST /api/v1/agents/artifacts/refreshPOST /api/v1/agents/artifacts/{artifact_id}/verify-checksumPOST /api/v1/agents/artifacts/{artifact_id}/verify-signatureGET /api/v1/agents/artifacts/{artifact_id}/provenanceGET /api/v1/agents/release-provenanceGET /api/v1/agents/release-provenance/{provenance_id}GET /api/v1/agents/onboarding/artifactsGUI-Aenderungen
/zero-trust/zeigt Agent-Artefakte und Release-Provenance mit SHA-256, Signaturstatus, Provenance, Verifikationsstatus und schreibrollenbasierten Aktionen.Tenant- und Berechtigungsgrenzen
Security-Entscheidungen
.dockerignoreschliesst.env,.git, Media und lokale Artefakte weiter aus.Ausgefuehrte Tests
nix develop --command cargo fmt --manifest-path rust/iscy-backend/Cargo.toml -- --checknix develop --command cargo clippy --locked --manifest-path rust/iscy-backend/Cargo.toml --all-targets -- -D warningsnix develop --command cargo test --locked --manifest-path rust/iscy-backend/Cargo.tomlnix shell nixpkgs#cargo-audit --command cargo-audit audit --file rust/iscy-backend/Cargo.lock --ignore RUSTSEC-2023-0071nix shell nixpkgs#cargo-deny nixpkgs#cargo --command cargo-deny --manifest-path rust/iscy-backend/Cargo.toml check advisories licenses sourcesnix develop --command make rust-smokenix develop --command make rust-restore-smokenix flake check0036nix develop --command make docs-pdfgit diff --checkCI-Befund und Korrektur
Der erste CI-Lauf zeigte einen reproduzierbaren Fehler im
docker-configJob: Der hardened Docker-Build nutzterust/iscy-backendals Kontext, waehrendagent_release_store.rsAllowlist-Artefakte ausdeploy/agentundflake.lockperinclude_bytes!benoetigt. Korrigiert wurde der Build-Kontext auf Repo-Root mit selektivem Dockerfile-Copy; Compose und CI nutzen denselben Kontext. Keine Security-Pruefung wurde entfernt oder abgeschwaecht.Bekannte Einschraenkungen
not_configured.Bewusst nicht umgesetzt