Skip to main content

akeyless_api/models/
rotated_secret_update_azure.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#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct RotatedSecretUpdateAzure {
16    /// List of the new tags that will be attached to this item
17    #[serde(rename = "add-tag", skip_serializing_if = "Option::is_none")]
18    pub add_tag: Option<Vec<String>>,
19    /// API ID to rotate (relevant only for rotator-type=api-key)
20    #[serde(rename = "api-id", skip_serializing_if = "Option::is_none")]
21    pub api_id: Option<String>,
22    /// API key to rotate (relevant only for rotator-type=api-key)
23    #[serde(rename = "api-key", skip_serializing_if = "Option::is_none")]
24    pub api_key: Option<String>,
25    /// Id of the azure app that hold the serect to be rotated (relevant only for rotator-type=api-key & authentication-credentials=use-target-creds)
26    #[serde(rename = "application-id", skip_serializing_if = "Option::is_none")]
27    pub application_id: Option<String>,
28    /// The credentials to connect with use-user-creds/use-target-creds
29    #[serde(rename = "authentication-credentials", skip_serializing_if = "Option::is_none")]
30    pub authentication_credentials: Option<String>,
31    /// Whether to automatically rotate every --rotation-interval days, or disable existing automatic rotation [true/false]
32    #[serde(rename = "auto-rotate", skip_serializing_if = "Option::is_none")]
33    pub auto_rotate: Option<String>,
34    /// Protection from accidental deletion of this object [true/false]
35    #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
36    pub delete_protection: Option<String>,
37    /// Description of the object
38    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
39    pub description: Option<String>,
40    /// If set, explicitly provide the storage account details [true/false]
41    #[serde(rename = "explicitly-set-sa", skip_serializing_if = "Option::is_none")]
42    pub explicitly_set_sa: Option<String>,
43    /// Enable graceful rotation (keep both versions temporarily). When enabled, a new secret version is created while the previous version is kept for the grace period, so both versions exist for a limited time. [true/false]
44    #[serde(rename = "grace-rotation", skip_serializing_if = "Option::is_none")]
45    pub grace_rotation: Option<String>,
46    /// The Hour of the grace rotation in UTC
47    #[serde(rename = "grace-rotation-hour", skip_serializing_if = "Option::is_none")]
48    pub grace_rotation_hour: Option<i32>,
49    /// The number of days to wait before deleting the old key (must be bigger than rotation-interval)
50    #[serde(rename = "grace-rotation-interval", skip_serializing_if = "Option::is_none")]
51    pub grace_rotation_interval: Option<String>,
52    /// When to create the new version relative to the rotation date [after/before]
53    #[serde(rename = "grace-rotation-timing", skip_serializing_if = "Option::is_none")]
54    pub grace_rotation_timing: Option<String>,
55    /// Additional custom fields to associate with the item
56    #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
57    pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
58    /// Set output format to JSON
59    #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
60    pub json: Option<bool>,
61    /// Whether to keep previous version [true/false]. If not set, use default according to account settings
62    #[serde(rename = "keep-prev-version", skip_serializing_if = "Option::is_none")]
63    pub keep_prev_version: Option<String>,
64    /// The name of a key that used to encrypt the secret value (if empty, the account default protectionKey key will be used)
65    #[serde(rename = "key", skip_serializing_if = "Option::is_none")]
66    pub key: Option<String>,
67    /// Set the maximum number of versions, limited by the account settings defaults.
68    #[serde(rename = "max-versions", skip_serializing_if = "Option::is_none")]
69    pub max_versions: Option<String>,
70    /// Rotated secret name
71    #[serde(rename = "name")]
72    pub name: String,
73    /// New item name
74    #[serde(rename = "new-name", skip_serializing_if = "Option::is_none")]
75    pub new_name: Option<String>,
76    /// The length of the password to be generated
77    #[serde(rename = "password-length", skip_serializing_if = "Option::is_none")]
78    pub password_length: Option<String>,
79    /// The resource group name (only relevant when explicitly-set-sa=true)
80    #[serde(rename = "resource-group-name", skip_serializing_if = "Option::is_none")]
81    pub resource_group_name: Option<String>,
82    /// The name of the storage account (only relevant when explicitly-set-sa=true)
83    #[serde(rename = "resource-name", skip_serializing_if = "Option::is_none")]
84    pub resource_name: Option<String>,
85    /// List of the existent tags that will be removed from this item
86    #[serde(rename = "rm-tag", skip_serializing_if = "Option::is_none")]
87    pub rm_tag: Option<Vec<String>>,
88    /// Rotate the value of the secret after SRA session ends [true/false]
89    #[serde(rename = "rotate-after-disconnect", skip_serializing_if = "Option::is_none")]
90    pub rotate_after_disconnect: Option<String>,
91    /// How many days before the rotation of the item would you like to be notified
92    #[serde(rename = "rotation-event-in", skip_serializing_if = "Option::is_none")]
93    pub rotation_event_in: Option<Vec<String>>,
94    /// The Hour of the rotation in UTC
95    #[serde(rename = "rotation-hour", skip_serializing_if = "Option::is_none")]
96    pub rotation_hour: Option<i32>,
97    /// The number of days to wait between every automatic key rotation (1-365)
98    #[serde(rename = "rotation-interval", skip_serializing_if = "Option::is_none")]
99    pub rotation_interval: Option<String>,
100    /// Enable this flag to prevent simultaneous use of the same secret
101    #[serde(rename = "secure-access-disable-concurrent-connections", skip_serializing_if = "Option::is_none")]
102    pub secure_access_disable_concurrent_connections: Option<bool>,
103    /// Enable/Disable secure remote access [true/false]
104    #[serde(rename = "secure-access-enable", skip_serializing_if = "Option::is_none")]
105    pub secure_access_enable: Option<String>,
106    /// Destination URL to inject secrets
107    #[serde(rename = "secure-access-url", skip_serializing_if = "Option::is_none")]
108    pub secure_access_url: Option<String>,
109    /// Enable Web Secure Remote Access
110    #[serde(rename = "secure-access-web", skip_serializing_if = "Option::is_none")]
111    pub secure_access_web: Option<bool>,
112    /// Secure browser via Akeyless's Secure Remote Access (SRA)
113    #[serde(rename = "secure-access-web-browsing", skip_serializing_if = "Option::is_none")]
114    pub secure_access_web_browsing: Option<bool>,
115    /// Web-Proxy via Akeyless's Secure Remote Access (SRA)
116    #[serde(rename = "secure-access-web-proxy", skip_serializing_if = "Option::is_none")]
117    pub secure_access_web_proxy: Option<bool>,
118    /// The name of the storage account key to rotate [key1/key2/kerb1/kerb2] (relevat to azure-storage-account)
119    #[serde(rename = "storage-account-key-name", skip_serializing_if = "Option::is_none")]
120    pub storage_account_key_name: Option<String>,
121    /// Authentication token (see `/auth` and `/configure`)
122    #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
123    pub token: Option<String>,
124    /// The universal identity token, Required only for universal_identity authentication
125    #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
126    pub uid_token: Option<String>,
127    /// The user principal name to rotate his password (relevant only for rotator-type=password)
128    #[serde(rename = "username", skip_serializing_if = "Option::is_none")]
129    pub username: Option<String>,
130}
131
132impl RotatedSecretUpdateAzure {
133    pub fn new(name: String) -> RotatedSecretUpdateAzure {
134        RotatedSecretUpdateAzure {
135            add_tag: None,
136            api_id: None,
137            api_key: None,
138            application_id: None,
139            authentication_credentials: None,
140            auto_rotate: None,
141            delete_protection: None,
142            description: None,
143            explicitly_set_sa: None,
144            grace_rotation: None,
145            grace_rotation_hour: None,
146            grace_rotation_interval: None,
147            grace_rotation_timing: None,
148            item_custom_fields: None,
149            json: None,
150            keep_prev_version: None,
151            key: None,
152            max_versions: None,
153            name,
154            new_name: None,
155            password_length: None,
156            resource_group_name: None,
157            resource_name: None,
158            rm_tag: None,
159            rotate_after_disconnect: None,
160            rotation_event_in: None,
161            rotation_hour: None,
162            rotation_interval: None,
163            secure_access_disable_concurrent_connections: None,
164            secure_access_enable: None,
165            secure_access_url: None,
166            secure_access_web: None,
167            secure_access_web_browsing: None,
168            secure_access_web_proxy: None,
169            storage_account_key_name: None,
170            token: None,
171            uid_token: None,
172            username: None,
173        }
174    }
175}
176