1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct RotatedSecretUpdateSsh {
16 #[serde(rename = "add-tag", skip_serializing_if = "Option::is_none")]
18 pub add_tag: Option<Vec<String>>,
19 #[serde(rename = "authentication-credentials", skip_serializing_if = "Option::is_none")]
21 pub authentication_credentials: Option<String>,
22 #[serde(rename = "auto-rotate", skip_serializing_if = "Option::is_none")]
24 pub auto_rotate: Option<String>,
25 #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
27 pub delete_protection: Option<String>,
28 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
30 pub description: Option<String>,
31 #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
33 pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
34 #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
36 pub json: Option<bool>,
37 #[serde(rename = "keep-prev-version", skip_serializing_if = "Option::is_none")]
39 pub keep_prev_version: Option<String>,
40 #[serde(rename = "key", skip_serializing_if = "Option::is_none")]
42 pub key: Option<String>,
43 #[serde(rename = "key-data-base64", skip_serializing_if = "Option::is_none")]
45 pub key_data_base64: Option<String>,
46 #[serde(rename = "max-versions", skip_serializing_if = "Option::is_none")]
48 pub max_versions: Option<String>,
49 #[serde(rename = "name")]
51 pub name: String,
52 #[serde(rename = "new-name", skip_serializing_if = "Option::is_none")]
54 pub new_name: Option<String>,
55 #[serde(rename = "password-length", skip_serializing_if = "Option::is_none")]
57 pub password_length: Option<String>,
58 #[serde(rename = "public-key-remote-path", skip_serializing_if = "Option::is_none")]
60 pub public_key_remote_path: Option<String>,
61 #[serde(rename = "rm-tag", skip_serializing_if = "Option::is_none")]
63 pub rm_tag: Option<Vec<String>>,
64 #[serde(rename = "rotate-after-disconnect", skip_serializing_if = "Option::is_none")]
66 pub rotate_after_disconnect: Option<String>,
67 #[serde(rename = "rotated-password", skip_serializing_if = "Option::is_none")]
69 pub rotated_password: Option<String>,
70 #[serde(rename = "rotated-username", skip_serializing_if = "Option::is_none")]
72 pub rotated_username: Option<String>,
73 #[serde(rename = "rotation-event-in", skip_serializing_if = "Option::is_none")]
75 pub rotation_event_in: Option<Vec<String>>,
76 #[serde(rename = "rotation-hour", skip_serializing_if = "Option::is_none")]
78 pub rotation_hour: Option<i32>,
79 #[serde(rename = "rotation-interval", skip_serializing_if = "Option::is_none")]
81 pub rotation_interval: Option<String>,
82 #[serde(rename = "rotator-custom-cmd", skip_serializing_if = "Option::is_none")]
84 pub rotator_custom_cmd: Option<String>,
85 #[serde(rename = "rotator-type")]
87 pub rotator_type: String,
88 #[serde(rename = "same-password", skip_serializing_if = "Option::is_none")]
90 pub same_password: Option<String>,
91 #[serde(rename = "secure-access-allow-external-user", skip_serializing_if = "Option::is_none")]
93 pub secure_access_allow_external_user: Option<bool>,
94 #[serde(rename = "secure-access-bastion-issuer", skip_serializing_if = "Option::is_none")]
96 pub secure_access_bastion_issuer: Option<String>,
97 #[serde(rename = "secure-access-certificate-issuer", skip_serializing_if = "Option::is_none")]
99 pub secure_access_certificate_issuer: Option<String>,
100 #[serde(rename = "secure-access-enable", skip_serializing_if = "Option::is_none")]
102 pub secure_access_enable: Option<String>,
103 #[serde(rename = "secure-access-host", skip_serializing_if = "Option::is_none")]
105 pub secure_access_host: Option<Vec<String>>,
106 #[serde(rename = "secure-access-rdp-domain", skip_serializing_if = "Option::is_none")]
108 pub secure_access_rdp_domain: Option<String>,
109 #[serde(rename = "secure-access-rdp-user", skip_serializing_if = "Option::is_none")]
111 pub secure_access_rdp_user: Option<String>,
112 #[serde(rename = "secure-access-ssh-user", skip_serializing_if = "Option::is_none")]
114 pub secure_access_ssh_user: Option<String>,
115 #[serde(rename = "secure-access-target-type", skip_serializing_if = "Option::is_none")]
117 pub secure_access_target_type: Option<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}
125
126impl RotatedSecretUpdateSsh {
127 pub fn new(name: String, rotator_type: String) -> RotatedSecretUpdateSsh {
128 RotatedSecretUpdateSsh {
129 add_tag: None,
130 authentication_credentials: None,
131 auto_rotate: None,
132 delete_protection: None,
133 description: None,
134 item_custom_fields: None,
135 json: None,
136 keep_prev_version: None,
137 key: None,
138 key_data_base64: None,
139 max_versions: None,
140 name,
141 new_name: None,
142 password_length: None,
143 public_key_remote_path: None,
144 rm_tag: None,
145 rotate_after_disconnect: None,
146 rotated_password: None,
147 rotated_username: None,
148 rotation_event_in: None,
149 rotation_hour: None,
150 rotation_interval: None,
151 rotator_custom_cmd: None,
152 rotator_type,
153 same_password: None,
154 secure_access_allow_external_user: None,
155 secure_access_bastion_issuer: None,
156 secure_access_certificate_issuer: None,
157 secure_access_enable: None,
158 secure_access_host: None,
159 secure_access_rdp_domain: None,
160 secure_access_rdp_user: None,
161 secure_access_ssh_user: None,
162 secure_access_target_type: None,
163 token: None,
164 uid_token: None,
165 }
166 }
167}
168