#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExtraValue {
#[prost(string, repeated, tag="1")]
pub items: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LocalSubjectAccessReview {
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ObjectMeta>,
#[prost(message, optional, tag="2")]
pub spec: ::core::option::Option<SubjectAccessReviewSpec>,
#[prost(message, optional, tag="3")]
pub status: ::core::option::Option<SubjectAccessReviewStatus>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NonResourceAttributes {
#[prost(string, optional, tag="1")]
pub path: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="2")]
pub verb: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NonResourceRule {
#[prost(string, repeated, tag="1")]
pub verbs: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="2")]
pub non_resource_ur_ls: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ResourceAttributes {
#[prost(string, optional, tag="1")]
pub namespace: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="2")]
pub verb: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="3")]
pub group: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="4")]
pub version: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub resource: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="6")]
pub subresource: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="7")]
pub name: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ResourceRule {
#[prost(string, repeated, tag="1")]
pub verbs: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="2")]
pub api_groups: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="3")]
pub resources: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="4")]
pub resource_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SelfSubjectAccessReview {
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ObjectMeta>,
#[prost(message, optional, tag="2")]
pub spec: ::core::option::Option<SelfSubjectAccessReviewSpec>,
#[prost(message, optional, tag="3")]
pub status: ::core::option::Option<SubjectAccessReviewStatus>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SelfSubjectAccessReviewSpec {
#[prost(message, optional, tag="1")]
pub resource_attributes: ::core::option::Option<ResourceAttributes>,
#[prost(message, optional, tag="2")]
pub non_resource_attributes: ::core::option::Option<NonResourceAttributes>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SelfSubjectRulesReview {
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ObjectMeta>,
#[prost(message, optional, tag="2")]
pub spec: ::core::option::Option<SelfSubjectRulesReviewSpec>,
#[prost(message, optional, tag="3")]
pub status: ::core::option::Option<SubjectRulesReviewStatus>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SelfSubjectRulesReviewSpec {
#[prost(string, optional, tag="1")]
pub namespace: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SubjectAccessReview {
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ObjectMeta>,
#[prost(message, optional, tag="2")]
pub spec: ::core::option::Option<SubjectAccessReviewSpec>,
#[prost(message, optional, tag="3")]
pub status: ::core::option::Option<SubjectAccessReviewStatus>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SubjectAccessReviewSpec {
#[prost(message, optional, tag="1")]
pub resource_attributes: ::core::option::Option<ResourceAttributes>,
#[prost(message, optional, tag="2")]
pub non_resource_attributes: ::core::option::Option<NonResourceAttributes>,
#[prost(string, optional, tag="3")]
pub user: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, repeated, tag="4")]
pub group: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(map="string, message", tag="5")]
pub extra: ::std::collections::HashMap<::prost::alloc::string::String, ExtraValue>,
#[prost(string, optional, tag="6")]
pub uid: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SubjectAccessReviewStatus {
#[prost(bool, optional, tag="1")]
pub allowed: ::core::option::Option<bool>,
#[prost(bool, optional, tag="4")]
pub denied: ::core::option::Option<bool>,
#[prost(string, optional, tag="2")]
pub reason: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="3")]
pub evaluation_error: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SubjectRulesReviewStatus {
#[prost(message, repeated, tag="1")]
pub resource_rules: ::prost::alloc::vec::Vec<ResourceRule>,
#[prost(message, repeated, tag="2")]
pub non_resource_rules: ::prost::alloc::vec::Vec<NonResourceRule>,
#[prost(bool, optional, tag="3")]
pub incomplete: ::core::option::Option<bool>,
#[prost(string, optional, tag="4")]
pub evaluation_error: ::core::option::Option<::prost::alloc::string::String>,
}