Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
341 commits
Select commit Hold shift + click to select a range
dc44678
kbs: add k8s kustomization for ITA
mythi Sep 10, 2024
39f014e
chore(deps): bump kms and kbs_protocol from guest-components
mythi Sep 11, 2024
e1c6645
ita: Build the kustomization based on nodeport
fidencio Sep 11, 2024
43ea3d9
build(deps): bump libloading from 0.8.3 to 0.8.5
dependabot[bot] Sep 12, 2024
41eb812
chore: update guest-components to v0.10.0
Xynnn007 Sep 12, 2024
dc051c3
build(deps): bump scientific from 0.5.2 to 0.5.3
dependabot[bot] Sep 13, 2024
c78a527
kbs: update kustomization yaml to v0.10.1
Xynnn007 Sep 13, 2024
2eafac2
kbs: fix release helper script
Xynnn007 Sep 13, 2024
7010d75
build(deps): bump cc from 1.1.12 to 1.1.19
dependabot[bot] Sep 16, 2024
e44bb38
build(deps): bump autocfg from 1.2.0 to 1.3.0
dependabot[bot] Sep 17, 2024
8c8cfd4
rvps: add missing Command use import
pawelpros Sep 16, 2024
d1eb5c6
ita: updated certs_file property documentation
pawelpros Sep 16, 2024
f8d73f3
lint: fix lint error
Xynnn007 Sep 13, 2024
635dfde
kbs/Makefile: update lint check rule
Xynnn007 Sep 14, 2024
e17d1f2
build(deps): bump unicode-width from 0.1.12 to 0.1.14
dependabot[bot] Sep 20, 2024
f7ab1e3
build(deps): bump native-tls from 0.2.11 to 0.2.12
dependabot[bot] Sep 23, 2024
9377a88
build(deps): bump k256 from 0.13.3 to 0.13.4
dependabot[bot] Sep 24, 2024
139c974
ita: updated trusted_certs_paths property documentation
pawelpros Sep 27, 2024
ba9d661
ita: add USER_AGENT to HTTP header
mythi Oct 1, 2024
ec03c3b
docs: add Jwk to attestation_token_config
mythi Oct 2, 2024
c96626b
CI: Fix artifact names in kbs e2e test
mkulke Oct 2, 2024
dec7d22
kbs: Simplify deployment overlays
stevenhorsman Oct 1, 2024
9d7dec6
docs: fix doctest error
fitzthum Oct 7, 2024
3fe0e92
build(deps): bump security-framework from 2.10.0 to 2.11.0
dependabot[bot] Sep 30, 2024
d29d486
kbs: Fix ibm-se deployment
stevenhorsman Oct 9, 2024
d346bbe
build(deps): bump quinn from 0.11.3 to 0.11.5
dependabot[bot] Oct 10, 2024
2754479
build(deps): bump superboring from 0.1.2 to 0.1.3
dependabot[bot] Oct 14, 2024
bf8d3f8
build(deps): bump lycheeverse/lychee-action from 1 to 2
dependabot[bot] Oct 14, 2024
fdda3b3
build(deps): bump serde_spanned from 0.6.7 to 0.6.8
dependabot[bot] Oct 15, 2024
712894b
build(deps): bump reqwest from 0.12.5 to 0.12.8
dependabot[bot] Oct 16, 2024
db9f1db
ci: replace Rust toolchain with actions-rust-lang/setup-rust-toolchai…
Xynnn007 Oct 15, 2024
fc61cb2
build(deps): bump futures-sink from 0.3.30 to 0.3.31
dependabot[bot] Oct 17, 2024
73ea001
build(deps): bump crossbeam-utils from 0.8.19 to 0.8.20
dependabot[bot] Oct 18, 2024
508b9ce
verifier: verify init_data in az-*-vtpm verifiers
mkulke Oct 15, 2024
88cc7dc
verifier/tdx: fix TdShimPlatformConfigInfo parse error comparation
Xynnn007 Oct 18, 2024
ef986eb
build(deps): bump thiserror from 1.0.59 to 1.0.64
dependabot[bot] Oct 21, 2024
c301239
derive debug for data and enums
ssolit Oct 16, 2024
caec790
build(deps): bump enumflags2 from 0.7.9 to 0.7.10
dependabot[bot] Oct 22, 2024
55d8587
KBS: combine CoCo Token and Jwk Token verifier
Xynnn007 Oct 9, 2024
093d545
AS: move JWK to the JWT Header field
Xynnn007 Oct 9, 2024
eeeb36a
docs/ci: abondon HTTPS_CRYPTO and update token verifier config
Xynnn007 Oct 9, 2024
cfacf88
build(deps): bump rustversion from 1.0.15 to 1.0.18
dependabot[bot] Oct 23, 2024
2b1158b
build(deps): bump arrayref from 0.3.7 to 0.3.9
dependabot[bot] Oct 24, 2024
2ea4c2a
build(deps): bump object from 0.36.3 to 0.36.5
dependabot[bot] Oct 25, 2024
ef6c9ef
build(deps): bump openssl-sys from 0.9.102 to 0.9.104
dependabot[bot] Oct 28, 2024
4784aba
build(deps): bump colorchoice from 1.0.2 to 1.0.3
dependabot[bot] Oct 30, 2024
6dabcb2
build(deps): bump autocfg from 1.3.0 to 1.4.0
dependabot[bot] Oct 31, 2024
f2c7cc9
build(deps): bump linux-raw-sys from 0.4.13 to 0.4.14
dependabot[bot] Nov 1, 2024
951d5c7
build(deps): bump num from 0.4.2 to 0.4.3
dependabot[bot] Nov 4, 2024
2969539
Dockerfile: fix capitalization
fitzthum Nov 4, 2024
251cce3
build(deps): bump cpufeatures from 0.2.12 to 0.2.14
dependabot[bot] Nov 5, 2024
9232fb4
KBS: refactor attestation module
Xynnn007 Sep 27, 2024
3e527c5
KBS: refactor policy engine module
Xynnn007 Sep 27, 2024
bca12d7
KBS: add Admin auth module
Xynnn007 Sep 27, 2024
065e115
KBS: add Plugins module
Xynnn007 Sep 27, 2024
100cf3d
KBS: Use new launch Config
Xynnn007 Sep 27, 2024
2327280
KBS: fix CI, docs and exampled configurations
Xynnn007 Sep 27, 2024
13baed4
AS: reorder the dep in lexicographic order
Xynnn007 Sep 27, 2024
f5bce85
KBS: change default feature to all backend AS and resource
Xynnn007 Sep 27, 2024
9fb3eef
KBS: Use one API to serve both admin and user requests
Xynnn007 Oct 30, 2024
78057cb
toml: add extra line to all toml files
Xynnn007 Oct 29, 2024
3b3614c
build(deps): bump once_cell from 1.19.0 to 1.20.2
dependabot[bot] Nov 6, 2024
c2eb782
build(deps): bump clap from 4.5.4 to 4.5.20
dependabot[bot] Nov 7, 2024
7d90061
as: Don't use all-verifier features
tylerfanelli Nov 7, 2024
ff6c43b
as/Makefile: Allow conditional features
tylerfanelli Nov 7, 2024
72f3bdc
fix(kbs-client): update README to reflect recent restructuring
EmmEff Nov 5, 2024
4dd9661
build(deps): bump thiserror from 1.0.64 to 1.0.65
dependabot[bot] Nov 8, 2024
7889195
resource: add PKCS11 resource back-end
fitzthum Oct 15, 2024
4e8dd8a
resource: add test for Pkcs11
fitzthum Oct 22, 2024
e194240
StorageBackend: update documentation for Pkcs11
fitzthum Nov 7, 2024
b17cb7d
aliyun_kms: fixup KMS after plugin refactor
fitzthum Nov 7, 2024
4e78e9a
kbs: docs: Fix ITA note
jodh-intel Nov 7, 2024
d32b1ac
kbs: ITA: Handle empty body error
jodh-intel Nov 6, 2024
281deb1
kbs: ITA: Allow policy IDs in config file
jodh-intel Nov 6, 2024
a69c434
kbs: add default value for config deserialization
Xynnn007 Nov 7, 2024
27f5cf2
docs: fix https document
Xynnn007 Nov 7, 2024
255a2ff
build(deps): bump winnow from 0.6.18 to 0.6.20
dependabot[bot] Nov 11, 2024
ed5efe8
KBS: Update configuration file format
Xynnn007 Nov 11, 2024
390708b
verifier: bump csv crate to latest
fitzthum Nov 6, 2024
f0db379
kbs: ita: Don't expose apiKey on debug
fidencio Nov 13, 2024
c69921a
kbs: plugins: pkcs11: Don't expose user pin on debug
fidencio Nov 13, 2024
acf8814
kbs: plugins: aliyun: Don't expose client_key / password on debug
fidencio Nov 13, 2024
34391ea
kbs: Let users know that sensitive fields are omitted from logs
fidencio Nov 13, 2024
80f8963
AS: fix build feature selection
Xynnn007 Nov 13, 2024
8296e0e
AS: fix restful-as dockerfile
Xynnn007 Nov 15, 2024
8218f50
kbs: fix configs in kubernetes deployments
mythi Nov 15, 2024
2966417
gha: Add image build check for s390x
BbolroC Nov 15, 2024
eefabb1
gha: Skip duplicate image build on merge
BbolroC Nov 15, 2024
3a04f52
CI: consolidate matrix configurations
mkulke Nov 15, 2024
b2a60b8
build(deps): bump serde_json from 1.0.116 to 1.0.132
dependabot[bot] Nov 12, 2024
5cf2c57
AS: Add error log print
Xynnn007 Nov 15, 2024
46dc43b
build(deps): bump mobc from 0.8.4 to 0.8.5
dependabot[bot] Nov 18, 2024
38e28ae
build(deps): bump intel-tee-quote-verification-rs
dependabot[bot] Nov 19, 2024
1a74e6e
verifier: Fetch VCEK cert from KDS instead of bailing
AdithyaKrishnan Nov 4, 2024
59aea7e
Changing fn fetch_vcek_from_kds() to async
AdithyaKrishnan Nov 18, 2024
b6289db
Add documentation describing each function
AdithyaKrishnan Nov 19, 2024
e449486
build(deps): bump tinyvec from 1.6.0 to 1.8.0
dependabot[bot] Nov 20, 2024
bf142fb
cargo: bump guest-components to fix kbs-client
fitzthum Nov 19, 2024
3f8e190
build(deps): bump actix-web-httpauth from 0.8.1 to 0.8.2
dependabot[bot] Nov 21, 2024
bc67a88
build(deps): bump libz-sys from 1.1.16 to 1.1.20
dependabot[bot] Nov 22, 2024
f55b6d5
AS: fix build with rvps features
Xynnn007 Nov 1, 2024
36c2e1a
chore: Update futures suites to 0.3.31
Xynnn007 Nov 25, 2024
f24ffad
kbs: allow resource uri to have `.` in safe ways
Xynnn007 Nov 25, 2024
ad5a851
build(deps): bump iana-time-zone from 0.1.60 to 0.1.61
dependabot[bot] Nov 26, 2024
9d67f1c
KBS: return more context about RCAR/Attestation error
Xynnn007 Nov 26, 2024
6db4f4b
token: implement EAR token generation
fitzthum Sep 25, 2024
2b07c52
token: allow KBS to verify ear tokens as JWTs
fitzthum Nov 22, 2024
e935a35
tests: remove unnecessary env var
fitzthum Oct 2, 2024
49a260c
tests: update e2e Makefile test
fitzthum Oct 3, 2024
9fd08ae
rvps: change interface to get all reference values
fitzthum Oct 4, 2024
3001c3e
policy: expand default policy
fitzthum Oct 4, 2024
17cba16
docs: update docs and examples for EAR tokens
fitzthum Oct 4, 2024
c41ffbe
ear: add expiration extension
fitzthum Oct 31, 2024
b4094c0
policy: fix as policy test
fitzthum Nov 1, 2024
0f5fbe5
config: config tweaks for EAR
fitzthum Nov 25, 2024
099d2b3
build(deps): bump cpufeatures from 0.2.15 to 0.2.16
dependabot[bot] Nov 27, 2024
f22f924
build(deps): bump tracing-attributes from 0.1.27 to 0.1.28
dependabot[bot] Nov 28, 2024
3f721c4
kbs: fix the configuration file read test
Xynnn007 Nov 28, 2024
8cac765
config: Update config docs and files
Xynnn007 Nov 28, 2024
d12210f
verifier: add judge logic for quote and eventlog string
Xynnn007 Nov 29, 2024
c96fa61
chore: update protobuf suites
Xynnn007 Nov 29, 2024
5152b98
build(deps): bump bytes from 1.8.0 to 1.9.0
dependabot[bot] Dec 4, 2024
f10f3cf
token: fix simple token broker
fitzthum Dec 3, 2024
98225e2
misc: clean up comments, logs, and errors
fitzthum Nov 28, 2024
9d51cbc
rvps: fix binary target path
mythi Dec 4, 2024
5d6932f
plugins: minor cleanup of api-server code
fitzthum Dec 4, 2024
bccb029
chore: Update jwt-simple dependency
Xynnn007 Dec 4, 2024
9ed5aab
build(deps): bump libc from 0.2.164 to 0.2.167
dependabot[bot] Dec 6, 2024
3dc87c4
build(deps): bump fastrand from 2.2.0 to 2.3.0
dependabot[bot] Dec 9, 2024
5b44a00
build(deps): bump quinn-udp from 0.5.7 to 0.5.8
dependabot[bot] Dec 10, 2024
4f53faf
Added checks for AS and KBS policy setting
jialez0 Dec 9, 2024
1d5a921
ear: remove productId from default policy
fitzthum Dec 10, 2024
d14ffb6
build(deps): bump pathdiff from 0.2.2 to 0.2.3
dependabot[bot] Dec 11, 2024
adf8c3d
build(deps): bump serde from 1.0.215 to 1.0.216
dependabot[bot] Dec 12, 2024
4599180
build(deps): bump thiserror from 1.0.69 to 2.0.3
dependabot[bot] Dec 13, 2024
f9d7010
token: avoid hard-coding ear claim names
fitzthum Dec 12, 2024
81065a5
cluster: use latest staged images
mythi Dec 13, 2024
281ee6f
build(deps): bump libc from 0.2.167 to 0.2.168
dependabot[bot] Dec 16, 2024
93ca13f
token: allow KBS to verify Azure VTPM token
pawelpros Dec 16, 2024
d0e2b5c
attestation-service: implement *_policy() methods for EAR token broker
mythi Dec 13, 2024
322dc16
build(deps): bump strum from 0.25.0 to 0.26.3
dependabot[bot] Dec 17, 2024
45b51ed
rvps: rework rvps configuration
fitzthum Dec 13, 2024
ffa8381
rvps: fixup KBS and AS tests for new RVPS config
fitzthum Dec 16, 2024
dcf80c2
rvps: adjust docker compose and k8s configs for rvps
fitzthum Dec 16, 2024
9074d2e
rvps: update docs for new rvps storage config
fitzthum Dec 17, 2024
ca5adae
build(deps): bump scc from 2.2.5 to 2.2.6
dependabot[bot] Dec 18, 2024
83ed64c
build(deps): bump clap_lex from 0.7.3 to 0.7.4
dependabot[bot] Dec 19, 2024
826b143
ci: Push AS, RVPS, KBS and KBS Client for arm64
Dec 20, 2024
cb1029c
ci: Improve cross-compile performance
Dec 20, 2024
0eae444
build(deps): bump tokio from 1.41.1 to 1.42.0
dependabot[bot] Dec 23, 2024
898230a
ci: fix failure to build kbs-client on s390x
Dec 23, 2024
80f801f
ci: fix failure to create multi-arch images
Dec 23, 2024
0e09d07
build(deps): bump zerofrom-derive from 0.1.4 to 0.1.5
dependabot[bot] Dec 27, 2024
8e1a677
build(deps): bump hmac-sha1-compact from 1.1.4 to 1.1.5
dependabot[bot] Dec 31, 2024
6767378
build(deps): bump eventlog-rs from 0.1.4 to 0.1.5
dependabot[bot] Jan 1, 2025
492d4da
build(deps): bump tracing-subscriber from 0.3.18 to 0.3.19
dependabot[bot] Jan 2, 2025
9db6d0b
chore: update to x509-parser 0.16.0 and asn1-rs 0.6.2
Xynnn007 Dec 26, 2024
8533b14
build(deps): bump prost from 0.13.3 to 0.13.4
dependabot[bot] Jan 3, 2025
f4708ca
ear: fix typo in policy
fitzthum Dec 20, 2024
4473595
ear: remove min operations from policy
fitzthum Dec 20, 2024
8623ab7
build(deps): bump cc from 1.2.1 to 1.2.7
dependabot[bot] Jan 6, 2025
118acd4
build(deps): bump coarsetime from 0.1.34 to 0.1.35
dependabot[bot] Jan 7, 2025
6b09dac
k8s: remove token signer from k8s config
fitzthum Jan 7, 2025
b68ca1f
build(deps): bump yoke from 0.7.4 to 0.7.5
dependabot[bot] Jan 8, 2025
f61e818
build(deps): bump quote from 1.0.37 to 1.0.38
dependabot[bot] Jan 9, 2025
81a0022
kbs: Bail if the jwk sets cannot be downloaded
fidencio Jan 9, 2025
58b8b1f
verifier: Rename user_data to report_data in SeAttestationClaims
BbolroC Jan 10, 2025
583ab69
snp: add report_data to tcb_claims
fitzthum Jan 10, 2025
437159a
snp: add init_data to TCB Claims
fitzthum Jan 10, 2025
717c1bf
Rebase upstream v0.11.0
lmilleri Sep 6, 2024
af8a9da
Merge pull request #53 from lmilleri/rebase-v0.11.0
lmilleri Feb 12, 2025
32bb5e4
chore(deps): update rust docker tag to v1.85.0
red-hat-konflux[bot] Feb 22, 2025
febda94
chore(deps): update konflux references to 793879e (#57)
red-hat-konflux[bot] Feb 22, 2025
0137189
Merge pull request #56 from openshift/konflux/mintmaker/main/rust-1.x
lmilleri Feb 25, 2025
eae88ae
chore(deps): update konflux references to 1fb4306 (#58)
red-hat-konflux[bot] Mar 1, 2025
1c68cd3
chore(deps): update konflux references to 68ea6ba (#59)
red-hat-konflux[bot] Mar 15, 2025
ce52c99
chore(deps): update konflux references to ce2fa48 (#62)
red-hat-konflux[bot] Mar 29, 2025
981d9f0
chore(deps): update module github.com/secure-systems-lab/go-securesys…
red-hat-konflux[bot] Mar 30, 2025
b3e2a5e
chore(deps): update konflux references to 4e6f788 (#66)
red-hat-konflux[bot] Apr 19, 2025
12912f0
chore(deps): update konflux references to b507376 (#67)
red-hat-konflux[bot] Apr 26, 2025
764b194
Merge commit 'bc26ac5acd8314ba34fe837d6886beb1ce384106' into rebase-0…
lmilleri Apr 30, 2025
345aef3
Merge pull request #68 from lmilleri/rebase-0.12.0
lmilleri May 9, 2025
a8bc09a
Konflux build pipeline service account migration for trustee
May 10, 2025
05c32b0
hermetic build
lmilleri May 13, 2025
c7e5c84
Merge pull request #61 from lmilleri/hermetic-build
lmilleri May 21, 2025
91094dd
Fix hermetic build
lmilleri May 21, 2025
a12641d
Merge pull request #72 from lmilleri/hermetic-build
spotlesstofu May 21, 2025
b0944d7
Merge tag 'v0.13.0' into rebase-0.13.0
lmilleri Jun 5, 2025
dfa99e4
kbs: import prometheus crate with a thin wrapper
pmores Apr 22, 2025
82bf048
kbs: deploy some test prometheus metrics in ResourceStorage
pmores Apr 22, 2025
8cfde1a
kbs: add prometheus exporter server to ApiServer
pmores Apr 22, 2025
e8dce7c
kbs: add some conventional HTTP metrics
pmores Apr 30, 2025
378b654
kbs: change the serial and tokio macro in test
Xynnn007 Jun 4, 2025
4168e9e
kbs: refactor the prometheus module
Xynnn007 Jun 4, 2025
2704291
kbs: move integration test crate into kbs
Xynnn007 Jan 22, 2025
f2c4e57
Update Cargo.lock
lmilleri Jun 5, 2025
3d8fc40
chore(deps): update konflux references
red-hat-konflux[bot] Jun 7, 2025
9b35e83
Merge branch 'main' into konflux-sa-migration-trustee
spotlesstofu Jun 9, 2025
355db2f
Merge pull request #71 from openshift/konflux-sa-migration-trustee
spotlesstofu Jun 9, 2025
69f454e
Merge pull request #75 from lmilleri/rebase-0.13.0
lmilleri Jun 9, 2025
5a18088
chore(deps): update docker.io/library/rust docker tag to v1.87.0
red-hat-konflux[bot] Jun 10, 2025
57defa6
Merge pull request #63 from openshift/konflux/mintmaker/main/github.c…
lmilleri Jun 12, 2025
8c07490
Merge pull request #69 from openshift/konflux/references/main
lmilleri Jun 12, 2025
9e24cb7
chore(deps): update konflux references
red-hat-konflux[bot] Jun 14, 2025
29e7454
Merge pull request #80 from openshift/konflux/references/main
lmilleri Jun 17, 2025
9644cdd
Fix docker-build-multi-platform-oci-ta.yaml
lmilleri Jun 18, 2025
dca55a7
Fix hermetic build
lmilleri Jun 18, 2025
b06d973
Merge pull request #78 from lmilleri/fix-sast-coverity-check-oci-ta
spotlesstofu Jun 18, 2025
edf609c
chore(deps): update konflux references
red-hat-konflux[bot] Jun 21, 2025
d1add04
chore(deps): update module golang.org/x/crypto to v0.39.0
red-hat-konflux[bot] Jun 22, 2025
df63896
chore(deps): update module golang.org/x/sys to v0.33.0
red-hat-konflux[bot] Jun 22, 2025
2dd5aec
Update digests
lmilleri Jun 23, 2025
6a6ac01
Merge pull request #83 from lmilleri/konflux-digests-23062025
lmilleri Jun 23, 2025
0dcef9d
Merge pull request #82 from openshift/konflux/references/main
lmilleri Jun 23, 2025
8d2b48b
Merge pull request #64 from openshift/konflux/mintmaker/main/golang.o…
lmilleri Jun 23, 2025
72a503b
Merge branch 'main' into konflux/mintmaker/main/golang.org-x-sys-0.x
lmilleri Jun 23, 2025
0dc26b0
Merge pull request #70 from openshift/konflux/mintmaker/main/docker.i…
lmilleri Jun 23, 2025
dc09317
Merge pull request #65 from openshift/konflux/mintmaker/main/golang.o…
lmilleri Jun 23, 2025
b13d572
Red Hat Konflux update trustee
Jun 25, 2025
f74308a
Merge pull request #84 from openshift/konflux-trustee
lmilleri Jun 25, 2025
15ad15d
chore(deps): update konflux references
red-hat-konflux[bot] Jun 28, 2025
c2697a7
chore(deps): update dependency go to v1.24.4
red-hat-konflux[bot] Jun 29, 2025
2cde609
chore(deps): update konflux references
red-hat-konflux[bot] Jul 5, 2025
b13216f
Remove image expiration for on-push pipeline
lmilleri Jul 7, 2025
4848348
Merge pull request #89 from lmilleri/fix-onpush-pipeline
lmilleri Jul 7, 2025
06c3d52
Merge pull request #87 from openshift/konflux/mintmaker/main/go-1.x
lmilleri Jul 8, 2025
b8b3137
chore(deps): update konflux references
red-hat-konflux[bot] Jul 12, 2025
d847d6e
Fix s390x build
lmilleri Jul 16, 2025
996b664
Merge pull request #94 from lmilleri/fix-s390x-build
lmilleri Jul 17, 2025
9919ad5
Update onpush pipeline for s390x build
lmilleri Jul 17, 2025
9d25e38
Merge pull request #95 from lmilleri/fix-s390x-build
lmilleri Jul 17, 2025
3132caa
Fix onpush pipeline
lmilleri Jul 17, 2025
8794159
Merge pull request #96 from lmilleri/fix-s390x-build
lmilleri Jul 17, 2025
5acffd2
Fix trustee onpush output image
lmilleri Jul 18, 2025
58cf35e
Merge pull request #97 from lmilleri/fix-output-image
lmilleri Jul 18, 2025
77e7566
chore(deps): update konflux references
red-hat-konflux[bot] Jul 19, 2025
d287435
Merge pull request #98 from openshift/konflux/references/main
lmilleri Jul 21, 2025
66e4b00
chore(deps): update module github.com/secure-systems-lab/go-securesys…
red-hat-konflux[bot] Aug 3, 2025
e800f97
chore(deps): update docker.io/library/rust docker tag to v1.89.0
red-hat-konflux[bot] Aug 9, 2025
3edb9ea
chore(deps): update konflux references
red-hat-konflux[bot] Aug 9, 2025
e1d6cdb
chore(deps): update dependency go to v1.24.6
red-hat-konflux[bot] Aug 10, 2025
11a2eeb
Merge pull request #99 from openshift/konflux/mintmaker/main/github.c…
lmilleri Aug 13, 2025
d36cc5d
Merge pull request #85 from openshift/konflux/mintmaker/main/docker.i…
lmilleri Aug 13, 2025
e9217d7
Merge pull request #91 from openshift/konflux/mintmaker/main/go-1.x
lmilleri Aug 13, 2025
ec1c067
chore(deps): update module golang.org/x/sys to v0.35.0
red-hat-konflux[bot] Aug 10, 2025
b895191
Merge pull request #93 from openshift/konflux/mintmaker/main/golang.o…
lmilleri Aug 13, 2025
7e97b3f
chore(deps): update module golang.org/x/crypto to v0.41.0
red-hat-konflux[bot] Aug 10, 2025
fcd4bde
Merge pull request #92 from openshift/konflux/mintmaker/main/golang.o…
lmilleri Aug 13, 2025
bb10c33
chore(deps): update konflux references
red-hat-konflux[bot] Aug 16, 2025
0aefb1c
chore(deps): update registry.access.redhat.com/ubi9/ubi docker tag to…
red-hat-konflux[bot] Aug 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
630 changes: 630 additions & 0 deletions .tekton/trustee-pull-request.yaml

Large diffs are not rendered by default.

613 changes: 613 additions & 0 deletions .tekton/trustee-push.yaml

Large diffs are not rendered by default.

386 changes: 204 additions & 182 deletions Cargo.lock

Large diffs are not rendered by default.

3 changes: 1 addition & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ members = [
"rvps",
"tools/kbs-client",
"deps/verifier",
"integration-tests",
]
resolver = "2"

Expand Down Expand Up @@ -33,7 +32,7 @@ hex = "0.4.3"
jwt-simple = { version = "0.12", default-features = false, features = [
"pure-rust",
] }
kbs_protocol = { git = "https://github.com/confidential-containers/guest-components.git", rev = "27b8245", default-features = false }
kbs_protocol = { git = "https://github.com/confidential-containers/guest-components.git", rev = "e6999a3c0fd877dae9e68ea78b8b483062db32b8", default-features = false }
kbs-types = "0.10.0"
kms = { git = "https://github.com/confidential-containers/guest-components.git", rev = "e6999a3c0fd877dae9e68ea78b8b483062db32b8", default-features = false }
jsonwebtoken = { version = "9", default-features = false }
Expand Down
37 changes: 0 additions & 37 deletions integration-tests/Cargo.toml

This file was deleted.

5 changes: 0 additions & 5 deletions integration-tests/src/lib.rs

This file was deleted.

16 changes: 15 additions & 1 deletion kbs/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ lazy_static = "1.4.0"
log.workspace = true
mobc = { version = "0.8.5", optional = true }
p256 = { workspace = true, features = ["ecdh"] }
prometheus = "0.13.4"
prost = { workspace = true, optional = true }
rand = "0.8.5"
regex = "1.11.1"
Expand Down Expand Up @@ -103,7 +104,20 @@ josekit = "0.10.0"
tempfile.workspace = true
rstest.workspace = true
reference-value-provider-service.path = "../rvps"
serial_test = "3.0"
serial_test.workspace = true

[target.'cfg(not(any(target_arch = "s390x", target_arch = "aarch64")))'.dev-dependencies]
kbs-client = { path = "../tools/kbs-client" }

[target.'cfg(target_arch = "s390x")'.dev-dependencies]
kbs-client = { path = "../tools/kbs-client", default-features = false, features = [
"se-attester",
] }

[target.'cfg(target_arch = "aarch64")'.dev-dependencies]
kbs-client = { path = "../tools/kbs-client", default-features = false, features = [
"cca-attester",
] }

[build-dependencies]
tonic-build = { workspace = true, optional = true }
2 changes: 1 addition & 1 deletion kbs/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ uninstall:
rm -rf $(INSTALL_DESTDIR)/kbs $(INSTALL_DESTDIR)/kbs-client $(INSTALL_DESTDIR)/issuer-kbs $(INSTALL_DESTDIR)/resource-kbs

check:
cargo test -p kbs -p kbs-client -p integration-tests $(TEST_ARGUMENTS)
cargo test -p kbs -p kbs-client $(TEST_ARGUMENTS)

lint:
cargo clippy -p kbs -p kbs-client $(TEST_ARGUMENTS) -- -D warnings
Expand Down
2 changes: 1 addition & 1 deletion kbs/docker/kbs-client-image/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM docker.io/library/rust:1.80.0 AS builder
FROM docker.io/library/rust:1.89.0 AS builder

WORKDIR /usr/src/kbs
COPY . .
Expand Down
2 changes: 1 addition & 1 deletion kbs/docker/kbs-client/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM docker.io/library/rust:1.80.0 AS builder
FROM docker.io/library/rust:1.89.0 AS builder
ARG ARCH=x86_64

WORKDIR /usr/src/kbs
Expand Down
103 changes: 82 additions & 21 deletions kbs/docker/rhel-ubi/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,34 +1,95 @@
# Use CentOS Stream to build.
FROM quay.io/centos/centos:stream9 AS builder
# Use UBI to build.
FROM registry.access.redhat.com/ubi9/ubi:9.6-1755678605 as builder
ARG ALIYUN=false

# Install build dependencies from CentOS repos.
RUN dnf -y --setopt=install_weak_deps=0 --enablerepo=crb install \
cargo pkg-config perl-FindBin openssl-devel perl-lib perl-IPC-Cmd perl-File-Compare perl-File-Copy tpm2-tss-devel clang-devel protobuf-compiler \
tar gzip

# Install build dependencies from Intel repo.
WORKDIR /root
RUN curl -O https://download.01.org/intel-sgx/sgx-linux/2.24/distro/centos-stream9/sgx_rpm_local_repo.tgz && \
tar -xaf sgx_rpm_local_repo.tgz && \
dnf -y install --nogpgcheck --repofrompath "sgx,file:///root/sgx_rpm_local_repo" libsgx-dcap-quote-verify-devel
# Install build dependencies from CentOS or RHEL repos.
RUN \
# Update packages. Get CVE fixes sooner.
dnf -y update && \
# Enable additional repositories for CentOS or RHEL.
#if command -v subscription-manager; then \
# REPO_ARCH=$(uname -m) && \
# subscription-manager register --org "$(cat /activation-key/org)" --activationkey "$(cat /activation-key/activationkey)" && \
# subscription-manager repos --enable rhel-9-for-${REPO_ARCH}-appstream-rpms --enable codeready-builder-for-rhel-9-${REPO_ARCH}-rpms; \
#else \
# dnf -y install 'dnf-command(config-manager)' && dnf config-manager --enable crb; \
#fi && \
# Install packages.
dnf -y --setopt=install_weak_deps=0 install \
cargo pkg-config perl-FindBin openssl-devel perl-lib perl-IPC-Cmd perl-File-Compare perl-File-Copy clang-devel \
rust gcc gcc-c++ \
cmake glibc-static perl device-mapper-devel \
# These two are only available in the CodeReady Builder repo.
tpm2-tss-devel protobuf-compiler \
# This one is needed to build the stub.
meson

# Build.
WORKDIR /usr/src/kbs
COPY . .
ARG KBS_FEATURES=coco-as-builtin
RUN \
cargo install --locked --root /usr/local/ --path kbs --bin kbs --no-default-features --features ${KBS_FEATURES} && \
# Collect linked files necessary for the binary to run.
mkdir -p /root/trustee/lib64 && \
ldd /usr/local/bin/kbs | sed 's@.*\s/@/@' | sed 's/\s.*//' | xargs -I {} cp {} /root/trustee/lib64
# Build sgx_dcap_quoteverify stub.
pushd sgx_dcap_quoteverify_stubs && \
meson setup build --prefix=/usr && \
meson compile -C build && \
meson install -C build && \
popd

# Build KBS.
RUN ARCH=$(uname -m) && \
if [ ${ARCH} = "s390x" ]; then \
export OPENSSL_NO_VENDOR=1; \
fi && \
pushd kbs && make AS_FEATURE=coco-as-builtin ALIYUN=${ALIYUN} ARCH=${ARCH} && make ARCH=${ARCH} install-kbs && popd


# Check the sha256sum of the Intel provided RPMs on x86_64.
RUN if [ $(uname -m) = "x86_64" ]; then \
pushd sgx_dcap_quoteverify_stubs && \
echo "2621eac23cb756bc238f88d6db5401f7efed55d87855fc2b7e446ddfc1bd37ca" libsgx-dcap-default-qpl-1.21.100.3-1.el9.x86_64.rpm | sha256sum --check && \
echo "57da5fb2253a99bb2483d19b6f30d1170ebc384e2891937e2c89fa55886b7034" libsgx-dcap-quote-verify-1.21.100.3-1.el9.x86_64.rpm | sha256sum --check && \
popd; \
fi

# Package UBI image.
FROM registry.access.redhat.com/ubi9

# Install runtime dependencies from Intel repo.
COPY --from=builder /root/sgx_rpm_local_repo /root/sgx_rpm_local_repo
RUN dnf -y install --nogpgcheck --setopt=install_weak_deps=0 --repofrompath "sgx,file:///root/sgx_rpm_local_repo" \
libsgx-dcap-default-qpl libsgx-dcap-quote-verify && \
rm -rf /root/sgx_rpm_local_repo
# Update packages. Get CVE fixes sooner.
RUN dnf -y update && dnf clean all

COPY --from=builder /usr/local/bin/kbs /usr/local/bin/kbs
COPY --from=builder /usr/src/kbs/sgx_dcap_quoteverify_stubs/libsgx-dcap-quote-verify-1.21.100.3-1.el9.x86_64.rpm /tmp/libsgx-dcap-quote-verify-1.21.100.3-1.el9.x86_64.rpm
COPY --from=builder /usr/src/kbs/sgx_dcap_quoteverify_stubs/libsgx-dcap-default-qpl-1.21.100.3-1.el9.x86_64.rpm /tmp/libsgx-dcap-default-qpl-1.21.100.3-1.el9.x86_64.rpm

# Install Intel binaries
RUN \
if [ $(uname -m) = "x86_64" ]; then \
dnf -y --nogpgcheck --setopt=install_weak_deps=0 localinstall \
/tmp/libsgx-dcap-quote-verify-1.21.100.3-1.el9.x86_64.rpm \
/tmp/libsgx-dcap-default-qpl-1.21.100.3-1.el9.x86_64.rpm; \
fi && \
rm -f /tmp/libsgx-dcap-quote-verify-1.21.100.3-1.el9.x86_64.rpm /tmp/libsgx-dcap-default-qpl-1.21.100.3-1.el9.x86_64.rpm

# Declare build-time variables.
ARG NAME="trustee"
ARG DESCRIPTION="The Trustee server."

# Red Hat labels.
LABEL com.redhat.component=$NAME
LABEL description=$DESCRIPTION
LABEL io.k8s.description=$DESCRIPTION
LABEL io.k8s.display-name=$NAME
LABEL name=$NAME
LABEL summary=$DESCRIPTION
LABEL distribution-scope=public
LABEL release="1"
LABEL url="https://access.redhat.com/"
LABEL vendor="Red Hat, Inc."
LABEL version="1"
LABEL maintainer="Red Hat"
# Reset labels inherited from base image.
LABEL io.openshift.tags=""

# Licenses
COPY LICENSE /licenses/LICENSE
71 changes: 69 additions & 2 deletions kbs/src/api_server.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,14 @@ use anyhow::Context;
use log::info;

use crate::{
admin::Admin, config::KbsConfig, jwe::jwe, plugins::PluginManager, policy_engine::PolicyEngine,
token::TokenVerifier, Error, Result,
admin::Admin,
config::KbsConfig,
jwe::jwe,
plugins::PluginManager,
policy_engine::PolicyEngine,
prometheus::{REQUEST_DURATION, REQUEST_SIZES, REQUEST_TOTAL},
token::TokenVerifier,
Error, Result,
};

const KBS_PREFIX: &str = "/kbs/v0";
Expand Down Expand Up @@ -101,11 +107,14 @@ impl ApiServer {
);

let http_config = self.config.http_server.clone();

#[allow(clippy::redundant_closure)]
let http_server = HttpServer::new({
move || {
let api_server = self.clone();
App::new()
.wrap(middleware::Logger::default())
.wrap(middleware::from_fn(prometheus_metrics_middleware))
.app_data(web::Data::new(api_server))
.app_data(web::PayloadConfig::new(
(1024 * 1024 * http_config.payload_request_size) as usize,
Expand All @@ -115,6 +124,11 @@ impl ApiServer {
.route(web::get().to(api))
.route(web::post().to(api)),
)
.service(
web::resource("/metrics")
.route(web::get().to(prometheus_metrics_handler))
.route(web::post().to(|| HttpResponse::MethodNotAllowed())),
)
}
});

Expand Down Expand Up @@ -258,3 +272,56 @@ pub(crate) async fn api(
}
}
}

pub(crate) async fn prometheus_metrics_handler(
_request: HttpRequest,
_core: web::Data<ApiServer>,
) -> Result<HttpResponse> {
let report =
crate::prometheus::export_metrics().map_err(|e| Error::PrometheusError { source: e })?;
Ok(HttpResponse::Ok().body(report))
}

use actix_web::body::MessageBody;
use actix_web::dev::{ServiceRequest, ServiceResponse};
use actix_web::middleware::Next;

async fn prometheus_metrics_middleware(
req: ServiceRequest,
next: Next<impl MessageBody>,
) -> std::result::Result<ServiceResponse<impl MessageBody>, actix_web::Error> {
let start = actix::clock::Instant::now();

// Ignore requests like /metrics for metrics collection, they can make
// metrics weirdly not add up and distort metrics in odd ways. They
// arguably are not very interesting either to a user of KBS metrics.
let is_kbs_req = req.request().path().starts_with("/kbs");
if is_kbs_req {
REQUEST_TOTAL.inc();

// Consider requests lacking a "content-length" header to be of zero
// size as this seems to be the usual case with KBS. (Streamed
// requests would also lack "content-length" but they don't seem too
// relevant with KBS.)
if let Some(len) = req.headers().get("content-length") {
if let Ok(Ok(len)) = len.to_str().map(|l| l.parse::<u64>()) {
REQUEST_SIZES.observe(len as f64);
}
} else {
REQUEST_SIZES.observe(0_f64);
}
}

// This is the actual request handling.
let res = next.call(req).await?;

if is_kbs_req {
REQUEST_DURATION.observe(start.elapsed().as_secs_f64());

if let actix_web::body::BodySize::Sized(len) = res.response().body().size() {
REQUEST_SIZES.observe(len as f64);
}
}

Ok(res)
}
6 changes: 6 additions & 0 deletions kbs/src/error.rs
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,12 @@ pub enum Error {

#[error("Token Verifier error")]
TokenVerifierError(#[from] crate::token::Error),

#[error("Prometheus error")]
PrometheusError {
#[from]
source: prometheus::Error,
},
}

impl ResponseError for Error {
Expand Down
2 changes: 2 additions & 0 deletions kbs/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,5 @@ pub use error::*;
pub mod admin;
pub mod http;
pub mod jwe;

pub mod prometheus;
8 changes: 8 additions & 0 deletions kbs/src/plugins/implementations/resource/backend.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ use regex::Regex;
use serde::Deserialize;
use std::fmt;

use crate::prometheus::{RESOURCE_READS_TOTAL, RESOURCE_WRITES_TOTAL};

use super::local_fs;

type RepositoryInstance = Arc<dyn StorageBackend>;
Expand Down Expand Up @@ -114,12 +116,18 @@ impl ResourceStorage {
resource_desc: ResourceDesc,
data: &[u8],
) -> Result<()> {
RESOURCE_WRITES_TOTAL
.with_label_values(&[&format!("{}", resource_desc)])
.inc();
self.backend
.write_secret_resource(resource_desc, data)
.await
}

pub(crate) async fn get_secret_resource(&self, resource_desc: ResourceDesc) -> Result<Vec<u8>> {
RESOURCE_READS_TOTAL
.with_label_values(&[&format!("{}", resource_desc)])
.inc();
self.backend.read_secret_resource(resource_desc).await
}
}
Expand Down
Loading