#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Selector {
#[prost(string, tag = "1")]
pub r#type: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub value: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SelectorMatch {
#[prost(message, repeated, tag = "1")]
pub selectors: ::prost::alloc::vec::Vec<Selector>,
#[prost(enumeration = "selector_match::MatchBehavior", tag = "2")]
pub r#match: i32,
}
pub mod selector_match {
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum MatchBehavior {
MatchExact = 0,
MatchSubset = 1,
MatchSuperset = 2,
MatchAny = 3,
}
impl MatchBehavior {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::MatchExact => "MATCH_EXACT",
Self::MatchSubset => "MATCH_SUBSET",
Self::MatchSuperset => "MATCH_SUPERSET",
Self::MatchAny => "MATCH_ANY",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"MATCH_EXACT" => Some(Self::MatchExact),
"MATCH_SUBSET" => Some(Self::MatchSubset),
"MATCH_SUPERSET" => Some(Self::MatchSuperset),
"MATCH_ANY" => Some(Self::MatchAny),
_ => None,
}
}
}
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Spiffeid {
#[prost(string, tag = "1")]
pub trust_domain: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub path: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct X509svid {
#[prost(bytes = "bytes", repeated, tag = "1")]
pub cert_chain: ::prost::alloc::vec::Vec<::prost::bytes::Bytes>,
#[prost(message, optional, tag = "2")]
pub id: ::core::option::Option<Spiffeid>,
#[prost(int64, tag = "3")]
pub expires_at: i64,
#[prost(string, tag = "4")]
pub hint: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Jwtsvid {
#[prost(string, tag = "1")]
pub token: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub id: ::core::option::Option<Spiffeid>,
#[prost(int64, tag = "3")]
pub expires_at: i64,
#[prost(int64, tag = "4")]
pub issued_at: i64,
#[prost(string, tag = "5")]
pub hint: ::prost::alloc::string::String,
}