1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct DynamicSecretCreateRdp {
17 #[serde(rename = "allow-user-extend-session", skip_serializing_if = "Option::is_none")]
19 pub allow_user_extend_session: Option<i64>,
20 #[serde(rename = "custom-username-template", skip_serializing_if = "Option::is_none")]
22 pub custom_username_template: Option<String>,
23 #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
25 pub delete_protection: Option<String>,
26 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
28 pub description: Option<String>,
29 #[serde(rename = "fixed-user-claim-keyname", skip_serializing_if = "Option::is_none")]
31 pub fixed_user_claim_keyname: Option<String>,
32 #[serde(rename = "fixed-user-only", skip_serializing_if = "Option::is_none")]
34 pub fixed_user_only: Option<String>,
35 #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
37 pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
38 #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
40 pub json: Option<bool>,
41 #[serde(rename = "name")]
43 pub name: String,
44 #[serde(rename = "password-length", skip_serializing_if = "Option::is_none")]
46 pub password_length: Option<String>,
47 #[serde(rename = "producer-encryption-key-name", skip_serializing_if = "Option::is_none")]
49 pub producer_encryption_key_name: Option<String>,
50 #[serde(rename = "rdp-admin-name", skip_serializing_if = "Option::is_none")]
52 pub rdp_admin_name: Option<String>,
53 #[serde(rename = "rdp-admin-pwd", skip_serializing_if = "Option::is_none")]
55 pub rdp_admin_pwd: Option<String>,
56 #[serde(rename = "rdp-host-name", skip_serializing_if = "Option::is_none")]
58 pub rdp_host_name: Option<String>,
59 #[serde(rename = "rdp-host-port", skip_serializing_if = "Option::is_none")]
61 pub rdp_host_port: Option<String>,
62 #[serde(rename = "rdp-user-groups", skip_serializing_if = "Option::is_none")]
64 pub rdp_user_groups: Option<String>,
65 #[serde(rename = "secure-access-allow-external-user", skip_serializing_if = "Option::is_none")]
67 pub secure_access_allow_external_user: Option<bool>,
68 #[serde(rename = "secure-access-bastion-issuer", skip_serializing_if = "Option::is_none")]
70 pub secure_access_bastion_issuer: Option<String>,
71 #[serde(rename = "secure-access-certificate-issuer", skip_serializing_if = "Option::is_none")]
73 pub secure_access_certificate_issuer: Option<String>,
74 #[serde(rename = "secure-access-delay", skip_serializing_if = "Option::is_none")]
76 pub secure_access_delay: Option<i64>,
77 #[serde(rename = "secure-access-enable", skip_serializing_if = "Option::is_none")]
79 pub secure_access_enable: Option<String>,
80 #[serde(rename = "secure-access-host", skip_serializing_if = "Option::is_none")]
82 pub secure_access_host: Option<Vec<String>>,
83 #[serde(rename = "secure-access-rd-gateway-server", skip_serializing_if = "Option::is_none")]
85 pub secure_access_rd_gateway_server: Option<String>,
86 #[serde(rename = "secure-access-rdp-domain", skip_serializing_if = "Option::is_none")]
88 pub secure_access_rdp_domain: Option<String>,
89 #[serde(rename = "secure-access-rdp-user", skip_serializing_if = "Option::is_none")]
91 pub secure_access_rdp_user: Option<String>,
92 #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
94 pub tags: Option<Vec<String>>,
95 #[serde(rename = "target-name", skip_serializing_if = "Option::is_none")]
97 pub target_name: Option<String>,
98 #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
100 pub token: Option<String>,
101 #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
103 pub uid_token: Option<String>,
104 #[serde(rename = "user-ttl", skip_serializing_if = "Option::is_none")]
106 pub user_ttl: Option<String>,
107 #[serde(rename = "warn-user-before-expiration", skip_serializing_if = "Option::is_none")]
109 pub warn_user_before_expiration: Option<i64>,
110}
111
112impl DynamicSecretCreateRdp {
113 pub fn new(name: String) -> DynamicSecretCreateRdp {
115 DynamicSecretCreateRdp {
116 allow_user_extend_session: None,
117 custom_username_template: None,
118 delete_protection: None,
119 description: None,
120 fixed_user_claim_keyname: None,
121 fixed_user_only: None,
122 item_custom_fields: None,
123 json: None,
124 name,
125 password_length: None,
126 producer_encryption_key_name: None,
127 rdp_admin_name: None,
128 rdp_admin_pwd: None,
129 rdp_host_name: None,
130 rdp_host_port: None,
131 rdp_user_groups: None,
132 secure_access_allow_external_user: None,
133 secure_access_bastion_issuer: None,
134 secure_access_certificate_issuer: None,
135 secure_access_delay: None,
136 secure_access_enable: None,
137 secure_access_host: None,
138 secure_access_rd_gateway_server: None,
139 secure_access_rdp_domain: None,
140 secure_access_rdp_user: None,
141 tags: None,
142 target_name: None,
143 token: None,
144 uid_token: None,
145 user_ttl: None,
146 warn_user_before_expiration: None,
147 }
148 }
149}
150