Skip to main content

akeyless_api/models/
dynamic_secret_update_aws.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/// DynamicSecretUpdateAws : dynamicSecretUpdateAws is a command that Updates aws dynamic secret
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct DynamicSecretUpdateAws {
17    #[serde(rename = "access-mode", skip_serializing_if = "Option::is_none")]
18    pub access_mode: Option<String>,
19    /// Admin credentials rotation interval (days)
20    #[serde(rename = "admin-rotation-interval-days", skip_serializing_if = "Option::is_none")]
21    pub admin_rotation_interval_days: Option<i64>,
22    /// Access Key ID
23    #[serde(rename = "aws-access-key-id", skip_serializing_if = "Option::is_none")]
24    pub aws_access_key_id: Option<String>,
25    /// Secret Access Key
26    #[serde(rename = "aws-access-secret-key", skip_serializing_if = "Option::is_none")]
27    pub aws_access_secret_key: Option<String>,
28    /// The AWS External ID associated with the AWS role (relevant only for assume_role mode)
29    #[serde(rename = "aws-external-id", skip_serializing_if = "Option::is_none")]
30    pub aws_external_id: Option<String>,
31    /// AWS Role ARNs to be used in the Assume Role operation (relevant only for assume_role mode)
32    #[serde(rename = "aws-role-arns", skip_serializing_if = "Option::is_none")]
33    pub aws_role_arns: Option<String>,
34    /// AWS User console access
35    #[serde(rename = "aws-user-console-access", skip_serializing_if = "Option::is_none")]
36    pub aws_user_console_access: Option<bool>,
37    /// AWS User groups
38    #[serde(rename = "aws-user-groups", skip_serializing_if = "Option::is_none")]
39    pub aws_user_groups: Option<String>,
40    /// AWS User policies
41    #[serde(rename = "aws-user-policies", skip_serializing_if = "Option::is_none")]
42    pub aws_user_policies: Option<String>,
43    /// Enable AWS User programmatic access
44    #[serde(rename = "aws-user-programmatic-access", skip_serializing_if = "Option::is_none")]
45    pub aws_user_programmatic_access: Option<bool>,
46    /// Customize how temporary usernames are generated using go template
47    #[serde(rename = "custom-username-template", skip_serializing_if = "Option::is_none")]
48    pub custom_username_template: Option<String>,
49    /// Protection from accidental deletion of this object [true/false]
50    #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
51    pub delete_protection: Option<String>,
52    /// Description of the object
53    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
54    pub description: Option<String>,
55    /// Automatic admin credentials rotation
56    #[serde(rename = "enable-admin-rotation", skip_serializing_if = "Option::is_none")]
57    pub enable_admin_rotation: Option<bool>,
58    /// Additional custom fields to associate with the item
59    #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
60    pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
61    /// Set output format to JSON
62    #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
63    pub json: Option<bool>,
64    /// Dynamic secret name
65    #[serde(rename = "name")]
66    pub name: String,
67    /// Dynamic secret name
68    #[serde(rename = "new-name", skip_serializing_if = "Option::is_none")]
69    pub new_name: Option<String>,
70    /// The length of the password to be generated
71    #[serde(rename = "password-length", skip_serializing_if = "Option::is_none")]
72    pub password_length: Option<String>,
73    /// Dynamic producer encryption key
74    #[serde(rename = "producer-encryption-key-name", skip_serializing_if = "Option::is_none")]
75    pub producer_encryption_key_name: Option<String>,
76    /// Region
77    #[serde(rename = "region", skip_serializing_if = "Option::is_none")]
78    pub region: Option<String>,
79    /// The AWS account id
80    #[serde(rename = "secure-access-aws-account-id", skip_serializing_if = "Option::is_none")]
81    pub secure_access_aws_account_id: Option<String>,
82    /// The AWS native cli
83    #[serde(rename = "secure-access-aws-native-cli", skip_serializing_if = "Option::is_none")]
84    pub secure_access_aws_native_cli: Option<bool>,
85    /// Deprecated. use secure-access-certificate-issuer
86    #[serde(rename = "secure-access-bastion-issuer", skip_serializing_if = "Option::is_none")]
87    pub secure_access_bastion_issuer: Option<String>,
88    /// Path to the SSH Certificate Issuer for your Akeyless Secure Access
89    #[serde(rename = "secure-access-certificate-issuer", skip_serializing_if = "Option::is_none")]
90    pub secure_access_certificate_issuer: Option<String>,
91    /// The delay duration, in seconds, to wait after generating just-in-time credentials. Accepted range: 0-120 seconds
92    #[serde(rename = "secure-access-delay", skip_serializing_if = "Option::is_none")]
93    pub secure_access_delay: Option<i64>,
94    /// Enable/Disable secure remote access [true/false]
95    #[serde(rename = "secure-access-enable", skip_serializing_if = "Option::is_none")]
96    pub secure_access_enable: Option<String>,
97    /// Enable Web Secure Remote Access
98    #[serde(rename = "secure-access-web", skip_serializing_if = "Option::is_none")]
99    pub secure_access_web: Option<bool>,
100    /// Secure browser via Akeyless's Secure Remote Access (SRA)
101    #[serde(rename = "secure-access-web-browsing", skip_serializing_if = "Option::is_none")]
102    pub secure_access_web_browsing: Option<bool>,
103    /// Web-Proxy via Akeyless's Secure Remote Access (SRA)
104    #[serde(rename = "secure-access-web-proxy", skip_serializing_if = "Option::is_none")]
105    pub secure_access_web_proxy: Option<bool>,
106    /// String of Key value session tags comma separated, relevant only for Assumed Role
107    #[serde(rename = "session-tags", skip_serializing_if = "Option::is_none")]
108    pub session_tags: Option<String>,
109    /// Add tags attached to this object
110    #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
111    pub tags: Option<Vec<String>>,
112    /// Target name
113    #[serde(rename = "target-name", skip_serializing_if = "Option::is_none")]
114    pub target_name: Option<String>,
115    /// Authentication token (see `/auth` and `/configure`)
116    #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
117    pub token: Option<String>,
118    /// String of transitive tag keys space separated, relevant only for Assumed Role
119    #[serde(rename = "transitive-tag-keys", skip_serializing_if = "Option::is_none")]
120    pub transitive_tag_keys: Option<String>,
121    /// The universal identity token, Required only for universal_identity authentication
122    #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
123    pub uid_token: Option<String>,
124    /// User TTL
125    #[serde(rename = "user-ttl", skip_serializing_if = "Option::is_none")]
126    pub user_ttl: Option<String>,
127}
128
129impl DynamicSecretUpdateAws {
130    /// dynamicSecretUpdateAws is a command that Updates aws dynamic secret
131    pub fn new(name: String) -> DynamicSecretUpdateAws {
132        DynamicSecretUpdateAws {
133            access_mode: None,
134            admin_rotation_interval_days: None,
135            aws_access_key_id: None,
136            aws_access_secret_key: None,
137            aws_external_id: None,
138            aws_role_arns: None,
139            aws_user_console_access: None,
140            aws_user_groups: None,
141            aws_user_policies: None,
142            aws_user_programmatic_access: None,
143            custom_username_template: None,
144            delete_protection: None,
145            description: None,
146            enable_admin_rotation: None,
147            item_custom_fields: None,
148            json: None,
149            name,
150            new_name: None,
151            password_length: None,
152            producer_encryption_key_name: None,
153            region: None,
154            secure_access_aws_account_id: None,
155            secure_access_aws_native_cli: None,
156            secure_access_bastion_issuer: None,
157            secure_access_certificate_issuer: None,
158            secure_access_delay: None,
159            secure_access_enable: None,
160            secure_access_web: None,
161            secure_access_web_browsing: None,
162            secure_access_web_proxy: None,
163            session_tags: None,
164            tags: None,
165            target_name: None,
166            token: None,
167            transitive_tag_keys: None,
168            uid_token: None,
169            user_ttl: None,
170        }
171    }
172}
173