Skip to main content

bitwarden_api_api/models/
access_audit_event_response_model.rs

1/*
2 * Bitwarden Internal API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: latest
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15/// AccessAuditEventResponseModel : One row of the PAM access-audit trail. Display names are as
16/// recorded when the event was written; subject ids are populated according to
17/// Bit.Services.Pam.Api.Models.Response.AccessAuditEventResponseModel.Kind.
18#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
19pub struct AccessAuditEventResponseModel {
20    #[serde(
21        rename = "object",
22        alias = "Object",
23        skip_serializing_if = "Option::is_none"
24    )]
25    pub object: Option<String>,
26    /// The event kind, as an Bit.Services.Pam.Api.Models.Response.AccessAuditEventKindNames name.
27    #[serde(
28        rename = "kind",
29        alias = "Kind",
30        skip_serializing_if = "Option::is_none"
31    )]
32    pub kind: Option<String>,
33    #[serde(
34        rename = "occurredAt",
35        alias = "OccurredAt",
36        skip_serializing_if = "Option::is_none"
37    )]
38    pub occurred_at: Option<String>,
39    #[serde(
40        rename = "organizationId",
41        alias = "OrganizationId",
42        skip_serializing_if = "Option::is_none"
43    )]
44    pub organization_id: Option<uuid::Uuid>,
45    /// Who performed the event; null for a system event.
46    #[serde(
47        rename = "actorId",
48        alias = "ActorId",
49        skip_serializing_if = "Option::is_none"
50    )]
51    pub actor_id: Option<uuid::Uuid>,
52    /// The owner of the subject request or lease.
53    #[serde(
54        rename = "requesterId",
55        alias = "RequesterId",
56        skip_serializing_if = "Option::is_none"
57    )]
58    pub requester_id: Option<uuid::Uuid>,
59    #[serde(
60        rename = "collectionId",
61        alias = "CollectionId",
62        skip_serializing_if = "Option::is_none"
63    )]
64    pub collection_id: Option<uuid::Uuid>,
65    #[serde(
66        rename = "cipherId",
67        alias = "CipherId",
68        skip_serializing_if = "Option::is_none"
69    )]
70    pub cipher_id: Option<uuid::Uuid>,
71    #[serde(
72        rename = "requestId",
73        alias = "RequestId",
74        skip_serializing_if = "Option::is_none"
75    )]
76    pub request_id: Option<uuid::Uuid>,
77    #[serde(
78        rename = "leaseId",
79        alias = "LeaseId",
80        skip_serializing_if = "Option::is_none"
81    )]
82    pub lease_id: Option<uuid::Uuid>,
83    #[serde(
84        rename = "ruleId",
85        alias = "RuleId",
86        skip_serializing_if = "Option::is_none"
87    )]
88    pub rule_id: Option<uuid::Uuid>,
89    #[serde(
90        rename = "targetSystemId",
91        alias = "TargetSystemId",
92        skip_serializing_if = "Option::is_none"
93    )]
94    pub target_system_id: Option<uuid::Uuid>,
95    #[serde(
96        rename = "accessConnectorId",
97        alias = "AccessConnectorId",
98        skip_serializing_if = "Option::is_none"
99    )]
100    pub access_connector_id: Option<uuid::Uuid>,
101    #[serde(
102        rename = "rotationConfigId",
103        alias = "RotationConfigId",
104        skip_serializing_if = "Option::is_none"
105    )]
106    pub rotation_config_id: Option<uuid::Uuid>,
107    #[serde(
108        rename = "rotationJobId",
109        alias = "RotationJobId",
110        skip_serializing_if = "Option::is_none"
111    )]
112    pub rotation_job_id: Option<uuid::Uuid>,
113    #[serde(
114        rename = "rotationSource",
115        alias = "RotationSource",
116        skip_serializing_if = "Option::is_none"
117    )]
118    pub rotation_source: Option<models::PamRotationSource>,
119    #[serde(
120        rename = "syncState",
121        alias = "SyncState",
122        skip_serializing_if = "Option::is_none"
123    )]
124    pub sync_state: Option<models::PamRotationSyncState>,
125    /// The reason, comment or message recorded with the event.
126    #[serde(
127        rename = "detail",
128        alias = "Detail",
129        skip_serializing_if = "Option::is_none"
130    )]
131    pub detail: Option<String>,
132    #[serde(
133        rename = "leaseNotBefore",
134        alias = "LeaseNotBefore",
135        skip_serializing_if = "Option::is_none"
136    )]
137    pub lease_not_before: Option<String>,
138    #[serde(
139        rename = "leaseNotAfter",
140        alias = "LeaseNotAfter",
141        skip_serializing_if = "Option::is_none"
142    )]
143    pub lease_not_after: Option<String>,
144    /// The actor's display name and email. Null for a system event or an unresolved user.
145    #[serde(
146        rename = "actorName",
147        alias = "ActorName",
148        skip_serializing_if = "Option::is_none"
149    )]
150    pub actor_name: Option<String>,
151    #[serde(
152        rename = "actorEmail",
153        alias = "ActorEmail",
154        skip_serializing_if = "Option::is_none"
155    )]
156    pub actor_email: Option<String>,
157    /// The requester's display name and email.
158    #[serde(
159        rename = "requesterName",
160        alias = "RequesterName",
161        skip_serializing_if = "Option::is_none"
162    )]
163    pub requester_name: Option<String>,
164    #[serde(
165        rename = "requesterEmail",
166        alias = "RequesterEmail",
167        skip_serializing_if = "Option::is_none"
168    )]
169    pub requester_email: Option<String>,
170    /// The access rule's name, for rule administration events.
171    #[serde(
172        rename = "ruleName",
173        alias = "RuleName",
174        skip_serializing_if = "Option::is_none"
175    )]
176    pub rule_name: Option<String>,
177    /// The target system's name, for rotation and target events.
178    #[serde(
179        rename = "targetSystemName",
180        alias = "TargetSystemName",
181        skip_serializing_if = "Option::is_none"
182    )]
183    pub target_system_name: Option<String>,
184    /// The access connector's name, for rotation and connector events.
185    #[serde(
186        rename = "accessConnectorName",
187        alias = "AccessConnectorName",
188        skip_serializing_if = "Option::is_none"
189    )]
190    pub access_connector_name: Option<String>,
191    /// True for a system event with no human actor.
192    #[serde(
193        rename = "automated",
194        alias = "Automated",
195        skip_serializing_if = "Option::is_none"
196    )]
197    pub automated: Option<bool>,
198    /// True when the action's outcome was never recorded, so it may not have completed.
199    #[serde(
200        rename = "incomplete",
201        alias = "Incomplete",
202        skip_serializing_if = "Option::is_none"
203    )]
204    pub incomplete: Option<bool>,
205}
206
207impl AccessAuditEventResponseModel {
208    /// One row of the PAM access-audit trail. Display names are as recorded when the event was
209    /// written; subject ids are populated according to
210    /// Bit.Services.Pam.Api.Models.Response.AccessAuditEventResponseModel.Kind.
211    pub fn new() -> AccessAuditEventResponseModel {
212        AccessAuditEventResponseModel {
213            object: None,
214            kind: None,
215            occurred_at: None,
216            organization_id: None,
217            actor_id: None,
218            requester_id: None,
219            collection_id: None,
220            cipher_id: None,
221            request_id: None,
222            lease_id: None,
223            rule_id: None,
224            target_system_id: None,
225            access_connector_id: None,
226            rotation_config_id: None,
227            rotation_job_id: None,
228            rotation_source: None,
229            sync_state: None,
230            detail: None,
231            lease_not_before: None,
232            lease_not_after: None,
233            actor_name: None,
234            actor_email: None,
235            requester_name: None,
236            requester_email: None,
237            rule_name: None,
238            target_system_name: None,
239            access_connector_name: None,
240            automated: None,
241            incomplete: None,
242        }
243    }
244}