pub struct AttestationVmConfig {
pub current_time: Option<i64>,
pub root_cert_thumbprint: String,
pub console_enabled: bool,
pub interactive_console_enabled: bool,
pub secure_boot: bool,
pub tpm_enabled: bool,
pub tpm_persisted: bool,
pub filtered_vpci_devices_allowed: bool,
pub vm_unique_id: String,
pub vmgs_provisioner: Option<VmgsProvisioner>,
pub hardware_sealing_policy: HardwareSealingPolicy,
}Expand description
VM configuration to be included in the RuntimeClaims.
Fields§
§current_time: Option<i64>Time stamp
root_cert_thumbprint: StringBase64-encoded hash of the provisioning cert
console_enabled: boolWhether the serial console is enabled
interactive_console_enabled: boolWhether the serial console, if enabled, is interactive
secure_boot: boolWhether secure boot is enabled
tpm_enabled: boolWhether the TPM is enabled
tpm_persisted: boolWhether the VM is in stateful mode (i.e. attestation is not suppressed).
NOTE: This is a legacy field. Its name (tpm-persisted on the wire)
predates stateless + hardware sealing and does NOT describe whether
TPM state is actually persisted to the VMGS at runtime — that broader
decision is made by the VMM (see no_persistent_secrets in
underhill_core). The name and value semantics are kept unchanged to
preserve the attestation runtime-claims contract and the
hardware-derived key KDF input.
filtered_vpci_devices_allowed: boolWhether certain vPCI devices are allowed through the device filter
vm_unique_id: StringVM id
vmgs_provisioner: Option<VmgsProvisioner>VMGS provenance data
hardware_sealing_policy: HardwareSealingPolicyHardware sealing policy
Trait Implementations§
Source§impl Clone for AttestationVmConfig
impl Clone for AttestationVmConfig
Source§fn clone(&self) -> AttestationVmConfig
fn clone(&self) -> AttestationVmConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AttestationVmConfig
impl Debug for AttestationVmConfig
Source§impl Default for AttestationVmConfig
impl Default for AttestationVmConfig
Source§impl DefaultEncoding for AttestationVmConfig
impl DefaultEncoding for AttestationVmConfig
Source§impl<'de> Deserialize<'de> for AttestationVmConfig
impl<'de> Deserialize<'de> for AttestationVmConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for AttestationVmConfig
impl Serialize for AttestationVmConfig
Source§impl<'encoding> StructDecodeMetadata<'encoding, Resource> for AttestationVmConfig
impl<'encoding> StructDecodeMetadata<'encoding, Resource> for AttestationVmConfig
Source§impl StructEncodeMetadata<Resource> for AttestationVmConfig
impl StructEncodeMetadata<Resource> for AttestationVmConfig
Auto Trait Implementations§
impl Freeze for AttestationVmConfig
impl RefUnwindSafe for AttestationVmConfig
impl Send for AttestationVmConfig
impl Sync for AttestationVmConfig
impl Unpin for AttestationVmConfig
impl UnsafeUnpin for AttestationVmConfig
impl UnwindSafe for AttestationVmConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> MeshField for T
impl<T> MeshField for T
§impl<T> MeshPayload for T
impl<T> MeshPayload for T
§impl<T> SerializeMessage for Twhere
T: 'static + MeshPayload + Send,
impl<T> SerializeMessage for Twhere
T: 'static + MeshPayload + Send,
§fn compute_message_size(&mut self, sizer: MessageSizer<'_>)
fn compute_message_size(&mut self, sizer: MessageSizer<'_>)
MessageEncode::compute_message_size].§fn write_message(self, writer: MessageWriter<'_, '_, Resource>)
fn write_message(self, writer: MessageWriter<'_, '_, Resource>)
MessageEncode::write_message].