-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
attestation.snp: reflect dependency of validators on productLine in verify.Options #1082
Conversation
v.logger.Info("Validation failed", "nonce", hex.EncodeToString(nonce), "error", err) | ||
} else { | ||
v.logger.Info("Validation successful") | ||
v.logger.Info("Validation successful", "nonce", hex.EncodeToString(nonce)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need to log the nonce? If validation fails because of it, wouldn't we see that in the corresponding error?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Logging considerations were moved to #1095
b0a4247
to
18c2dbd
Compare
18c2dbd
to
df5e047
Compare
df5e047
to
1d79796
Compare
Successfully created backport PR for |
Our reference values of SNP attestation have a hard dependency on the productLine used during attestation. This includes the derivation of trustedRoots, as well as the trustedMeasurements. By design, we start a validator configured with specific verifyOpts for each reference value.
This led to the error "VCEK could not be verified by any trusted roots", because validators configured with the wrong productLine tried to fulfill the attestation verification. Therefore this PR adds the explicit setting of the productLine in verifyOpts, to reflect the dependency of our reference values on the productLine. As expected we then run into the error below prior to validation, which reveals that a validator is configured for the wrong productLine:
time=2024-12-18T10:46:20.815Z level=ERROR msg="Validation failed" mesh-authority.validator.tee-type=snp mesh-authority.validator.nonce=6881501f40cebdb1492a87316e5a11cbb1bb9dfc2939240a9df098dacdab8b6a mesh-authority.validator.error="verifying report: expected product name SEV_PRODUCT_MILAN, got SEV_PRODUCT_GENOA"
Logging considerations were moved to #1095