pub struct AuditAnnotation {
pub key: String,
pub value_expression: String,
}
Expand description
AuditAnnotation describes how to produce an audit annotation for an API request.
Fields§
§key: String
key specifies the audit annotation key. The audit annotation keys of a ValidatingAdmissionPolicy must be unique. The key must be a qualified name ([A-Za-z0-9][-A-Za-z0-9_.]*) no more than 63 bytes in length.
The key is combined with the resource name of the ValidatingAdmissionPolicy to construct an audit annotation key: “{ValidatingAdmissionPolicy name}/{key}”.
If an admission webhook uses the same resource name as this ValidatingAdmissionPolicy and the same audit annotation key, the annotation key will be identical. In this case, the first annotation written with the key will be included in the audit event and all subsequent annotations with the same key will be discarded.
Required.
value_expression: String
valueExpression represents the expression which is evaluated by CEL to produce an audit annotation value. The expression must evaluate to either a string or null value. If the expression evaluates to a string, the audit annotation is included with the string value. If the expression evaluates to null or empty string the audit annotation will be omitted. The valueExpression may be no longer than 5kb in length. If the result of the valueExpression is more than 10kb in length, it will be truncated to 10kb.
If multiple ValidatingAdmissionPolicyBinding resources match an API request, then the valueExpression will be evaluated for each binding. All unique values produced by the valueExpressions will be joined together in a comma-separated list.
Required.
Trait Implementations§
Source§impl Clone for AuditAnnotation
impl Clone for AuditAnnotation
Source§fn clone(&self) -> AuditAnnotation
fn clone(&self) -> AuditAnnotation
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for AuditAnnotation
impl Debug for AuditAnnotation
Source§impl DeepMerge for AuditAnnotation
impl DeepMerge for AuditAnnotation
Source§fn merge_from(&mut self, other: Self)
fn merge_from(&mut self, other: Self)
other
into self
.Source§impl Default for AuditAnnotation
impl Default for AuditAnnotation
Source§fn default() -> AuditAnnotation
fn default() -> AuditAnnotation
Source§impl<'de> Deserialize<'de> for AuditAnnotation
impl<'de> Deserialize<'de> for AuditAnnotation
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 JsonSchema for AuditAnnotation
impl JsonSchema for AuditAnnotation
Source§fn schema_name() -> String
fn schema_name() -> String
Source§fn json_schema(__gen: &mut SchemaGenerator) -> Schema
fn json_schema(__gen: &mut SchemaGenerator) -> Schema
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
$ref
keyword. Read moreSource§impl PartialEq for AuditAnnotation
impl PartialEq for AuditAnnotation
Source§impl Serialize for AuditAnnotation
impl Serialize for AuditAnnotation
impl StructuralPartialEq for AuditAnnotation
Auto Trait Implementations§
impl Freeze for AuditAnnotation
impl RefUnwindSafe for AuditAnnotation
impl Send for AuditAnnotation
impl Sync for AuditAnnotation
impl Unpin for AuditAnnotation
impl UnwindSafe for AuditAnnotation
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)