Skip to main content

akeyless_api/models/
dynamic_secret_update_mongo_db.rs

1/*
2 * Akeyless API
3 *
4 * The purpose of this application is to provide access to Akeyless API.
5 *
6 * The version of the OpenAPI document: 3.0
7 * Contact: support@akeyless.io
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// DynamicSecretUpdateMongoDb : dynamicSecretUpdateMongoDb is a command that updates either mongodb  dynamic secret or mongodb atlas dynamic secret
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct DynamicSecretUpdateMongoDb {
17    /// Customize how temporary usernames are generated using go template
18    #[serde(rename = "custom-username-template", skip_serializing_if = "Option::is_none")]
19    pub custom_username_template: Option<String>,
20    /// Protection from accidental deletion of this object [true/false]
21    #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
22    pub delete_protection: Option<String>,
23    /// Description of the object
24    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
25    pub description: Option<String>,
26    /// Additional custom fields to associate with the item
27    #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
28    pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
29    /// Set output format to JSON
30    #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
31    pub json: Option<bool>,
32    /// MongoDB Atlas private key
33    #[serde(rename = "mongodb-atlas-api-private-key", skip_serializing_if = "Option::is_none")]
34    pub mongodb_atlas_api_private_key: Option<String>,
35    /// MongoDB Atlas public key
36    #[serde(rename = "mongodb-atlas-api-public-key", skip_serializing_if = "Option::is_none")]
37    pub mongodb_atlas_api_public_key: Option<String>,
38    /// MongoDB Atlas project ID
39    #[serde(rename = "mongodb-atlas-project-id", skip_serializing_if = "Option::is_none")]
40    pub mongodb_atlas_project_id: Option<String>,
41    /// MongoDB custom data
42    #[serde(rename = "mongodb-custom-data", skip_serializing_if = "Option::is_none")]
43    pub mongodb_custom_data: Option<String>,
44    /// MongoDB server default authentication database
45    #[serde(rename = "mongodb-default-auth-db", skip_serializing_if = "Option::is_none")]
46    pub mongodb_default_auth_db: Option<String>,
47    /// MongoDB server host and port
48    #[serde(rename = "mongodb-host-port", skip_serializing_if = "Option::is_none")]
49    pub mongodb_host_port: Option<String>,
50    /// MongoDB Name
51    #[serde(rename = "mongodb-name", skip_serializing_if = "Option::is_none")]
52    pub mongodb_name: Option<String>,
53    /// MongoDB server password. You will prompted to provide a password if it will not appear in CLI parameters
54    #[serde(rename = "mongodb-password", skip_serializing_if = "Option::is_none")]
55    pub mongodb_password: Option<String>,
56    /// MongoDB Roles
57    #[serde(rename = "mongodb-roles", skip_serializing_if = "Option::is_none")]
58    pub mongodb_roles: Option<String>,
59    /// MongoDB Scopes (Atlas only)
60    #[serde(rename = "mongodb-scopes", skip_serializing_if = "Option::is_none")]
61    pub mongodb_scopes: Option<String>,
62    /// MongoDB server URI
63    #[serde(rename = "mongodb-server-uri", skip_serializing_if = "Option::is_none")]
64    pub mongodb_server_uri: Option<String>,
65    /// MongoDB server URI options
66    #[serde(rename = "mongodb-uri-options", skip_serializing_if = "Option::is_none")]
67    pub mongodb_uri_options: Option<String>,
68    /// MongoDB server username
69    #[serde(rename = "mongodb-username", skip_serializing_if = "Option::is_none")]
70    pub mongodb_username: Option<String>,
71    /// Dynamic secret name
72    #[serde(rename = "name")]
73    pub name: String,
74    /// Dynamic secret name
75    #[serde(rename = "new-name", skip_serializing_if = "Option::is_none")]
76    pub new_name: Option<String>,
77    /// The length of the password to be generated
78    #[serde(rename = "password-length", skip_serializing_if = "Option::is_none")]
79    pub password_length: Option<String>,
80    /// Encrypt producer with following key
81    #[serde(rename = "producer-encryption-key-name", skip_serializing_if = "Option::is_none")]
82    pub producer_encryption_key_name: Option<String>,
83    /// Deprecated. use secure-access-certificate-issuer
84    #[serde(rename = "secure-access-bastion-issuer", skip_serializing_if = "Option::is_none")]
85    pub secure_access_bastion_issuer: Option<String>,
86    /// Path to the SSH Certificate Issuer for your Akeyless Secure Access
87    #[serde(rename = "secure-access-certificate-issuer", skip_serializing_if = "Option::is_none")]
88    pub secure_access_certificate_issuer: Option<String>,
89    /// The DB name (relevant only for DB Dynamic-Secret)
90    #[serde(rename = "secure-access-db-name", skip_serializing_if = "Option::is_none")]
91    pub secure_access_db_name: Option<String>,
92    /// The delay duration, in seconds, to wait after generating just-in-time credentials. Accepted range: 0-120 seconds
93    #[serde(rename = "secure-access-delay", skip_serializing_if = "Option::is_none")]
94    pub secure_access_delay: Option<i64>,
95    /// Enable/Disable secure remote access [true/false]
96    #[serde(rename = "secure-access-enable", skip_serializing_if = "Option::is_none")]
97    pub secure_access_enable: Option<String>,
98    /// Target DB servers for connections (In case of Linked Target association, host(s) will inherit Linked Target hosts)
99    #[serde(rename = "secure-access-host", skip_serializing_if = "Option::is_none")]
100    pub secure_access_host: Option<Vec<String>>,
101    /// Enable Web Secure Remote Access
102    #[serde(rename = "secure-access-web", skip_serializing_if = "Option::is_none")]
103    pub secure_access_web: Option<bool>,
104    /// Add tags attached to this object
105    #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
106    pub tags: Option<Vec<String>>,
107    /// Target name
108    #[serde(rename = "target-name", skip_serializing_if = "Option::is_none")]
109    pub target_name: Option<String>,
110    /// Authentication token (see `/auth` and `/configure`)
111    #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
112    pub token: Option<String>,
113    /// The universal identity token, Required only for universal_identity authentication
114    #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
115    pub uid_token: Option<String>,
116    /// User TTL
117    #[serde(rename = "user-ttl", skip_serializing_if = "Option::is_none")]
118    pub user_ttl: Option<String>,
119}
120
121impl DynamicSecretUpdateMongoDb {
122    /// dynamicSecretUpdateMongoDb is a command that updates either mongodb  dynamic secret or mongodb atlas dynamic secret
123    pub fn new(name: String) -> DynamicSecretUpdateMongoDb {
124        DynamicSecretUpdateMongoDb {
125            custom_username_template: None,
126            delete_protection: None,
127            description: None,
128            item_custom_fields: None,
129            json: None,
130            mongodb_atlas_api_private_key: None,
131            mongodb_atlas_api_public_key: None,
132            mongodb_atlas_project_id: None,
133            mongodb_custom_data: None,
134            mongodb_default_auth_db: None,
135            mongodb_host_port: None,
136            mongodb_name: None,
137            mongodb_password: None,
138            mongodb_roles: None,
139            mongodb_scopes: None,
140            mongodb_server_uri: None,
141            mongodb_uri_options: None,
142            mongodb_username: None,
143            name,
144            new_name: None,
145            password_length: None,
146            producer_encryption_key_name: None,
147            secure_access_bastion_issuer: None,
148            secure_access_certificate_issuer: None,
149            secure_access_db_name: None,
150            secure_access_delay: None,
151            secure_access_enable: None,
152            secure_access_host: None,
153            secure_access_web: None,
154            tags: None,
155            target_name: None,
156            token: None,
157            uid_token: None,
158            user_ttl: None,
159        }
160    }
161}
162