Struct google_api_proto::google::cloud::binaryauthorization::v1::Policy
source · pub struct Policy {
pub name: String,
pub description: String,
pub global_policy_evaluation_mode: i32,
pub admission_whitelist_patterns: Vec<AdmissionWhitelistPattern>,
pub cluster_admission_rules: BTreeMap<String, AdmissionRule>,
pub kubernetes_namespace_admission_rules: BTreeMap<String, AdmissionRule>,
pub kubernetes_service_account_admission_rules: BTreeMap<String, AdmissionRule>,
pub istio_service_identity_admission_rules: BTreeMap<String, AdmissionRule>,
pub default_admission_rule: Option<AdmissionRule>,
pub update_time: Option<Timestamp>,
}
Expand description
A [policy][google.cloud.binaryauthorization.v1.Policy] for container image binary authorization.
Fields§
§name: String
Output only. The resource name, in the format projects/*/policy
. There is
at most one policy per project.
description: String
Optional. A descriptive comment.
global_policy_evaluation_mode: i32
Optional. Controls the evaluation of a Google-maintained global admission policy for common system-level images. Images not covered by the global policy will be subject to the project admission policy. This setting has no effect when specified inside a global admission policy.
admission_whitelist_patterns: Vec<AdmissionWhitelistPattern>
Optional. Admission policy allowlisting. A matching admission request will always be permitted. This feature is typically used to exclude Google or third-party infrastructure images from Binary Authorization policies.
cluster_admission_rules: BTreeMap<String, AdmissionRule>
Optional. Per-cluster admission rules. Cluster spec format:
location.clusterId
. There can be at most one admission rule per cluster
spec.
A location
is either a compute zone (e.g. us-central1-a) or a region
(e.g. us-central1).
For clusterId
syntax restrictions see
https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters.
kubernetes_namespace_admission_rules: BTreeMap<String, AdmissionRule>
Optional. Per-kubernetes-namespace admission rules. K8s namespace spec format: [a-z.-]+, e.g. ‘some-namespace’
kubernetes_service_account_admission_rules: BTreeMap<String, AdmissionRule>
Optional. Per-kubernetes-service-account admission rules. Service account
spec format: namespace:serviceaccount
. e.g. ‘test-ns:default’
istio_service_identity_admission_rules: BTreeMap<String, AdmissionRule>
Optional. Per-istio-service-identity admission rules. Istio service
identity spec format:
spiffe://
default_admission_rule: Option<AdmissionRule>
Required. Default admission rule for a cluster without a per-cluster, per- kubernetes-service-account, or per-istio-service-identity admission rule.
update_time: Option<Timestamp>
Output only. Time when the policy was last updated.
Implementations§
source§impl Policy
impl Policy
sourcepub fn global_policy_evaluation_mode(&self) -> GlobalPolicyEvaluationMode
pub fn global_policy_evaluation_mode(&self) -> GlobalPolicyEvaluationMode
Returns the enum value of global_policy_evaluation_mode
, or the default if the field is set to an invalid enum value.
sourcepub fn set_global_policy_evaluation_mode(
&mut self,
value: GlobalPolicyEvaluationMode,
)
pub fn set_global_policy_evaluation_mode( &mut self, value: GlobalPolicyEvaluationMode, )
Sets global_policy_evaluation_mode
to the provided enum value.
Trait Implementations§
source§impl Message for Policy
impl Message for Policy
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for Policy
impl PartialEq for Policy
impl StructuralPartialEq for Policy
Auto Trait Implementations§
impl Freeze for Policy
impl RefUnwindSafe for Policy
impl Send for Policy
impl Sync for Policy
impl Unpin for Policy
impl UnwindSafe for Policy
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
§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>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request