1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct RotatedSecretCreateLdap {
16 #[serde(rename = "ProviderType", skip_serializing_if = "Option::is_none")]
17 pub provider_type: Option<String>,
18 #[serde(rename = "authentication-credentials", skip_serializing_if = "Option::is_none")]
20 pub authentication_credentials: Option<String>,
21 #[serde(rename = "auto-rotate", skip_serializing_if = "Option::is_none")]
23 pub auto_rotate: Option<String>,
24 #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
26 pub delete_protection: Option<String>,
27 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
29 pub description: Option<String>,
30 #[serde(rename = "host-provider", skip_serializing_if = "Option::is_none")]
32 pub host_provider: Option<String>,
33 #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
35 pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
36 #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
38 pub json: Option<bool>,
39 #[serde(rename = "key", skip_serializing_if = "Option::is_none")]
41 pub key: Option<String>,
42 #[serde(rename = "max-versions", skip_serializing_if = "Option::is_none")]
44 pub max_versions: Option<String>,
45 #[serde(rename = "name")]
47 pub name: String,
48 #[serde(rename = "password-length", skip_serializing_if = "Option::is_none")]
50 pub password_length: Option<String>,
51 #[serde(rename = "rotate-after-disconnect", skip_serializing_if = "Option::is_none")]
53 pub rotate_after_disconnect: Option<String>,
54 #[serde(rename = "rotated-password", skip_serializing_if = "Option::is_none")]
56 pub rotated_password: Option<String>,
57 #[serde(rename = "rotated-username", skip_serializing_if = "Option::is_none")]
59 pub rotated_username: Option<String>,
60 #[serde(rename = "rotation-event-in", skip_serializing_if = "Option::is_none")]
62 pub rotation_event_in: Option<Vec<String>>,
63 #[serde(rename = "rotation-hour", skip_serializing_if = "Option::is_none")]
65 pub rotation_hour: Option<i32>,
66 #[serde(rename = "rotation-interval", skip_serializing_if = "Option::is_none")]
68 pub rotation_interval: Option<String>,
69 #[serde(rename = "rotator-type")]
71 pub rotator_type: String,
72 #[serde(rename = "secure-access-bastion-issuer", skip_serializing_if = "Option::is_none")]
74 pub secure_access_bastion_issuer: Option<String>,
75 #[serde(rename = "secure-access-certificate-issuer", skip_serializing_if = "Option::is_none")]
77 pub secure_access_certificate_issuer: Option<String>,
78 #[serde(rename = "secure-access-enable", skip_serializing_if = "Option::is_none")]
80 pub secure_access_enable: Option<String>,
81 #[serde(rename = "secure-access-host", skip_serializing_if = "Option::is_none")]
83 pub secure_access_host: Option<Vec<String>>,
84 #[serde(rename = "secure-access-rdp-domain", skip_serializing_if = "Option::is_none")]
86 pub secure_access_rdp_domain: Option<String>,
87 #[serde(rename = "secure-access-url", skip_serializing_if = "Option::is_none")]
89 pub secure_access_url: Option<String>,
90 #[serde(rename = "secure-access-web", skip_serializing_if = "Option::is_none")]
92 pub secure_access_web: Option<bool>,
93 #[serde(rename = "secure-access-web-browsing", skip_serializing_if = "Option::is_none")]
95 pub secure_access_web_browsing: Option<bool>,
96 #[serde(rename = "secure-access-web-proxy", skip_serializing_if = "Option::is_none")]
98 pub secure_access_web_proxy: Option<bool>,
99 #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
101 pub tags: Option<Vec<String>>,
102 #[serde(rename = "target", skip_serializing_if = "Option::is_none")]
104 pub target: Option<Vec<String>>,
105 #[serde(rename = "target-name")]
107 pub target_name: String,
108 #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
110 pub token: Option<String>,
111 #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
113 pub uid_token: Option<String>,
114 #[serde(rename = "user-attribute", skip_serializing_if = "Option::is_none")]
116 pub user_attribute: Option<String>,
117 #[serde(rename = "user-dn", skip_serializing_if = "Option::is_none")]
119 pub user_dn: Option<String>,
120}
121
122impl RotatedSecretCreateLdap {
123 pub fn new(name: String, rotator_type: String, target_name: String) -> RotatedSecretCreateLdap {
124 RotatedSecretCreateLdap {
125 provider_type: None,
126 authentication_credentials: None,
127 auto_rotate: None,
128 delete_protection: None,
129 description: None,
130 host_provider: None,
131 item_custom_fields: None,
132 json: None,
133 key: None,
134 max_versions: None,
135 name,
136 password_length: None,
137 rotate_after_disconnect: None,
138 rotated_password: None,
139 rotated_username: None,
140 rotation_event_in: None,
141 rotation_hour: None,
142 rotation_interval: None,
143 rotator_type,
144 secure_access_bastion_issuer: None,
145 secure_access_certificate_issuer: None,
146 secure_access_enable: None,
147 secure_access_host: None,
148 secure_access_rdp_domain: None,
149 secure_access_url: None,
150 secure_access_web: None,
151 secure_access_web_browsing: None,
152 secure_access_web_proxy: None,
153 tags: None,
154 target: None,
155 target_name,
156 token: None,
157 uid_token: None,
158 user_attribute: None,
159 user_dn: None,
160 }
161 }
162}
163