Generating an X.509-SVID with rcgen
use rcgen::{CertificateParams, DistinguishedName, ExtendedKeyUsagePurpose,
KeyUsagePurpose, SanType};
use std::str::FromStr;
let mut params = CertificateParams::default();
params.distinguished_name = DistinguishedName::new();
params.subject_alt_names = vec![
SanType::URI(rcgen::Ia5String::from_str(
"spiffe://leo.amazon.com/ns/prod/svc/provisioning"
)?),
];
let now = rcgen::date_time_ymd(2026, 8, 7);
params.not_before = now;
params.not_after = now;
params.is_ca = rcgen::IsCa::NoCa;
params.extended_key_usages = vec![
ExtendedKeyUsagePurpose::ServerAuth,
ExtendedKeyUsagePurpose::ClientAuth,
];