Summary
Baremetal TDX attestation requires two infrastructure components that are not yet fully integrated:
-
Intel Device Plugins Operator — provides the SGX device plugin (SgxDevicePlugin CR), which registers sgx.intel.com/enclave and sgx.intel.com/provision resources on TDX-capable nodes. Without this, the QGS (Quote Generation Service) cannot schedule and TDX quotes are empty.
-
PCCS TLS certificate trust — The trustee pod's QCNL config (sgx_default_qcnl.conf) needs "use_secure_cert": false when using a local PCCS with self-signed certificates. Without this, quote verification fails with SGX_QL_ROOT_CA_UNTRUSTED (0xe065).
Current State
intel-device-plugins-operator subscription added to values-baremetal.yaml (certified-operators, stable channel)
- TDX config enabled in trustee overrides (
kbs.tdx.enabled: true, pointing to pccs-service.intel-dcap.svc.cluster.local:8042)
- Trustee chart
tdx-config.yaml template updated on feature/baremetal-attestation branch to include "use_secure_cert": false
Error Progression
TDX Quote is empty — no SGX device plugin, QGS can't run
SGX_QL_NETWORK_ERROR (0xe019) — SGX device plugin installed but QCNL pointing to localhost instead of PCCS service
SGX_QL_ROOT_CA_UNTRUSTED (0xe065) — QCNL reaching PCCS but rejecting self-signed cert
Action Items
🤖 Generated with Claude Code
Summary
Baremetal TDX attestation requires two infrastructure components that are not yet fully integrated:
Intel Device Plugins Operator — provides the SGX device plugin (
SgxDevicePluginCR), which registerssgx.intel.com/enclaveandsgx.intel.com/provisionresources on TDX-capable nodes. Without this, the QGS (Quote Generation Service) cannot schedule and TDX quotes are empty.PCCS TLS certificate trust — The trustee pod's QCNL config (
sgx_default_qcnl.conf) needs"use_secure_cert": falsewhen using a local PCCS with self-signed certificates. Without this, quote verification fails withSGX_QL_ROOT_CA_UNTRUSTED (0xe065).Current State
intel-device-plugins-operatorsubscription added tovalues-baremetal.yaml(certified-operators, stable channel)kbs.tdx.enabled: true, pointing topccs-service.intel-dcap.svc.cluster.local:8042)tdx-config.yamltemplate updated onfeature/baremetal-attestationbranch to include"use_secure_cert": falseError Progression
TDX Quote is empty— no SGX device plugin, QGS can't runSGX_QL_NETWORK_ERROR (0xe019)— SGX device plugin installed but QCNL pointing to localhost instead of PCCS serviceSGX_QL_ROOT_CA_UNTRUSTED (0xe065)— QCNL reaching PCCS but rejecting self-signed certAction Items
use_secure_cert: falsein tdx-config🤖 Generated with Claude Code