pub struct RotationEventPayload {
pub version: u32,
pub from_algorithm: SigningAlgorithm,
pub from_key_id: String,
pub from_public_key_b64: String,
pub to_algorithm: SigningAlgorithm,
pub to_key_id: String,
pub to_public_key_b64: String,
pub issued_at: DateTime<Utc>,
pub transition_until: DateTime<Utc>,
}Expand description
Inner payload of a RotationEvent — the bytes that get signed.
Serialized via serde_jcs (RFC 8785 canonical JSON) so the byte
representation is stable across hosts. Any drift in field order or
number encoding silently invalidates the signature, so canonical
JSON is non-negotiable.
Fields§
§version: u32Schema version. Always 1 for this crate.
from_algorithm: SigningAlgorithmAlgorithm of the from key — what signed this payload.
from_key_id: StringOpaque id of the previous key (e.g. KMS ARN).
from_public_key_b64: StringSubjectPublicKeyInfo (DER) of the previous key, base64-encoded.
to_algorithm: SigningAlgorithmAlgorithm of the to key.
to_key_id: StringOpaque id of the new key.
to_public_key_b64: StringSubjectPublicKeyInfo (DER) of the new key, base64-encoded.
issued_at: DateTime<Utc>UTC instant at which the transition window opened.
transition_until: DateTime<Utc>UTC instant after which the previous key should no longer be
trusted. Plugin-hosts MUST evict the from key from their trust
cache once their wall clock passes this.
Trait Implementations§
Source§impl Clone for RotationEventPayload
impl Clone for RotationEventPayload
Source§fn clone(&self) -> RotationEventPayload
fn clone(&self) -> RotationEventPayload
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RotationEventPayload
impl Debug for RotationEventPayload
Source§impl<'de> Deserialize<'de> for RotationEventPayload
impl<'de> Deserialize<'de> for RotationEventPayload
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 PartialEq for RotationEventPayload
impl PartialEq for RotationEventPayload
Source§fn eq(&self, other: &RotationEventPayload) -> bool
fn eq(&self, other: &RotationEventPayload) -> bool
self and other values to be equal, and is used by ==.