1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct RotatedSecretCreateAzure {
16 #[serde(rename = "api-id", skip_serializing_if = "Option::is_none")]
18 pub api_id: Option<String>,
19 #[serde(rename = "api-key", skip_serializing_if = "Option::is_none")]
21 pub api_key: Option<String>,
22 #[serde(rename = "application-id", skip_serializing_if = "Option::is_none")]
24 pub application_id: Option<String>,
25 #[serde(rename = "authentication-credentials", skip_serializing_if = "Option::is_none")]
27 pub authentication_credentials: Option<String>,
28 #[serde(rename = "auto-rotate", skip_serializing_if = "Option::is_none")]
30 pub auto_rotate: Option<String>,
31 #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
33 pub delete_protection: Option<String>,
34 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
36 pub description: Option<String>,
37 #[serde(rename = "explicitly-set-sa", skip_serializing_if = "Option::is_none")]
39 pub explicitly_set_sa: Option<String>,
40 #[serde(rename = "grace-rotation", skip_serializing_if = "Option::is_none")]
42 pub grace_rotation: Option<String>,
43 #[serde(rename = "grace-rotation-hour", skip_serializing_if = "Option::is_none")]
45 pub grace_rotation_hour: Option<i32>,
46 #[serde(rename = "grace-rotation-interval", skip_serializing_if = "Option::is_none")]
48 pub grace_rotation_interval: Option<String>,
49 #[serde(rename = "grace-rotation-timing", skip_serializing_if = "Option::is_none")]
51 pub grace_rotation_timing: Option<String>,
52 #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
54 pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
55 #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
57 pub json: Option<bool>,
58 #[serde(rename = "key", skip_serializing_if = "Option::is_none")]
60 pub key: Option<String>,
61 #[serde(rename = "max-versions", skip_serializing_if = "Option::is_none")]
63 pub max_versions: Option<String>,
64 #[serde(rename = "name")]
66 pub name: String,
67 #[serde(rename = "password-length", skip_serializing_if = "Option::is_none")]
69 pub password_length: Option<String>,
70 #[serde(rename = "resource-group-name", skip_serializing_if = "Option::is_none")]
72 pub resource_group_name: Option<String>,
73 #[serde(rename = "resource-name", skip_serializing_if = "Option::is_none")]
75 pub resource_name: Option<String>,
76 #[serde(rename = "rotate-after-disconnect", skip_serializing_if = "Option::is_none")]
78 pub rotate_after_disconnect: Option<String>,
79 #[serde(rename = "rotation-event-in", skip_serializing_if = "Option::is_none")]
81 pub rotation_event_in: Option<Vec<String>>,
82 #[serde(rename = "rotation-hour", skip_serializing_if = "Option::is_none")]
84 pub rotation_hour: Option<i32>,
85 #[serde(rename = "rotation-interval", skip_serializing_if = "Option::is_none")]
87 pub rotation_interval: Option<String>,
88 #[serde(rename = "rotator-type")]
90 pub rotator_type: String,
91 #[serde(rename = "secure-access-disable-concurrent-connections", skip_serializing_if = "Option::is_none")]
93 pub secure_access_disable_concurrent_connections: Option<bool>,
94 #[serde(rename = "secure-access-enable", skip_serializing_if = "Option::is_none")]
96 pub secure_access_enable: Option<String>,
97 #[serde(rename = "secure-access-url", skip_serializing_if = "Option::is_none")]
99 pub secure_access_url: Option<String>,
100 #[serde(rename = "secure-access-web", skip_serializing_if = "Option::is_none")]
102 pub secure_access_web: Option<bool>,
103 #[serde(rename = "secure-access-web-browsing", skip_serializing_if = "Option::is_none")]
105 pub secure_access_web_browsing: Option<bool>,
106 #[serde(rename = "secure-access-web-proxy", skip_serializing_if = "Option::is_none")]
108 pub secure_access_web_proxy: Option<bool>,
109 #[serde(rename = "storage-account-key-name", skip_serializing_if = "Option::is_none")]
111 pub storage_account_key_name: Option<String>,
112 #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
114 pub tags: Option<Vec<String>>,
115 #[serde(rename = "target-name")]
117 pub target_name: String,
118 #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
120 pub token: Option<String>,
121 #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
123 pub uid_token: Option<String>,
124 #[serde(rename = "username", skip_serializing_if = "Option::is_none")]
126 pub username: Option<String>,
127}
128
129impl RotatedSecretCreateAzure {
130 pub fn new(name: String, rotator_type: String, target_name: String) -> RotatedSecretCreateAzure {
131 RotatedSecretCreateAzure {
132 api_id: None,
133 api_key: None,
134 application_id: None,
135 authentication_credentials: None,
136 auto_rotate: None,
137 delete_protection: None,
138 description: None,
139 explicitly_set_sa: None,
140 grace_rotation: None,
141 grace_rotation_hour: None,
142 grace_rotation_interval: None,
143 grace_rotation_timing: None,
144 item_custom_fields: None,
145 json: None,
146 key: None,
147 max_versions: None,
148 name,
149 password_length: None,
150 resource_group_name: None,
151 resource_name: None,
152 rotate_after_disconnect: None,
153 rotation_event_in: None,
154 rotation_hour: None,
155 rotation_interval: None,
156 rotator_type,
157 secure_access_disable_concurrent_connections: None,
158 secure_access_enable: None,
159 secure_access_url: None,
160 secure_access_web: None,
161 secure_access_web_browsing: None,
162 secure_access_web_proxy: None,
163 storage_account_key_name: None,
164 tags: None,
165 target_name,
166 token: None,
167 uid_token: None,
168 username: None,
169 }
170 }
171}
172