#[non_exhaustive]pub struct AuditConfig {
pub audit_log_configs: Vec<AuditLogConfig>,
pub service: Option<String>,
/* private fields */
}backend-buckets or backend-services or disks or firewall-policies or images or instance-templates or instances or instant-snapshots or interconnect-attachment-groups or interconnect-groups or licenses or machine-images or network-attachments or network-firewall-policies or node-groups or node-templates or region-backend-services or region-disks or region-instant-snapshots or region-network-firewall-policies or reservation-blocks or reservation-sub-blocks or reservations or resource-policies or service-attachments or snapshots or storage-pools or subnetworks only.Expand description
Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs.
If there are AuditConfigs for both allServices and a specific service,
the union of the two AuditConfigs is used for that service: the log_types
specified in each AuditConfig are enabled, and the exempted_members in each
AuditLogConfig are exempted.
Example Policy with multiple AuditConfigs:
{
"audit_configs": [
{
"service": "allServices",
"audit_log_configs": [
{
"log_type": "DATA_READ",
"exempted_members": [
"user:jose@example.com"
]
},
{
"log_type": "DATA_WRITE"
},
{
"log_type": "ADMIN_READ"
}
]
},
{
"service": "sampleservice.googleapis.com",
"audit_log_configs": [
{
"log_type": "DATA_READ"
},
{
"log_type": "DATA_WRITE",
"exempted_members": [
"user:aliya@example.com"
]
}
]
}
]
}For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
logging. It also exempts jose@example.com from DATA_READ logging, and
aliya@example.com from DATA_WRITE logging.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.audit_log_configs: Vec<AuditLogConfig>The configuration for logging of each type of permission.
service: Option<String>Specifies a service that will be enabled for audit logging.
For example, storage.googleapis.com, cloudsql.googleapis.com.
allServices is a special value that covers all services.
Implementations§
Source§impl AuditConfig
impl AuditConfig
pub fn new() -> Self
Sourcepub fn set_audit_log_configs<T, V>(self, v: T) -> Self
pub fn set_audit_log_configs<T, V>(self, v: T) -> Self
Sets the value of audit_log_configs.
§Example
use google_cloud_compute_v1::model::AuditLogConfig;
let x = AuditConfig::new()
.set_audit_log_configs([
AuditLogConfig::default()/* use setters */,
AuditLogConfig::default()/* use (different) setters */,
]);Sourcepub fn set_service<T>(self, v: T) -> Self
pub fn set_service<T>(self, v: T) -> Self
Trait Implementations§
Source§impl Clone for AuditConfig
impl Clone for AuditConfig
Source§fn clone(&self) -> AuditConfig
fn clone(&self) -> AuditConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more