Skip to main content

akeyless_api/models/
rotated_secret_create_redis.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 RotatedSecretCreateRedis {
16    /// The credentials to connect with use-user-creds/use-target-creds
17    #[serde(rename = "authentication-credentials", skip_serializing_if = "Option::is_none")]
18    pub authentication_credentials: Option<String>,
19    /// Whether to automatically rotate every --rotation-interval days, or disable existing automatic rotation [true/false]
20    #[serde(rename = "auto-rotate", skip_serializing_if = "Option::is_none")]
21    pub auto_rotate: Option<String>,
22    /// Protection from accidental deletion of this object [true/false]
23    #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
24    pub delete_protection: Option<String>,
25    /// Description of the object
26    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
27    pub description: Option<String>,
28    /// Additional custom fields to associate with the item
29    #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
30    pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
31    /// Set output format to JSON
32    #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
33    pub json: Option<bool>,
34    /// The name of a key that used to encrypt the secret value (if empty, the account default protectionKey key will be used)
35    #[serde(rename = "key", skip_serializing_if = "Option::is_none")]
36    pub key: Option<String>,
37    /// Set the maximum number of versions, limited by the account settings defaults.
38    #[serde(rename = "max-versions", skip_serializing_if = "Option::is_none")]
39    pub max_versions: Option<String>,
40    /// Rotated secret name
41    #[serde(rename = "name")]
42    pub name: String,
43    /// The length of the password to be generated
44    #[serde(rename = "password-length", skip_serializing_if = "Option::is_none")]
45    pub password_length: Option<String>,
46    /// rotated-username password (relevant only for rotator-type=password)
47    #[serde(rename = "rotated-password", skip_serializing_if = "Option::is_none")]
48    pub rotated_password: Option<String>,
49    /// username to be rotated, if selected use-self-creds at rotator-creds-type, this username will try to rotate it's own password, if use-target-creds is selected, target credentials will be use to rotate the rotated-password (relevant only for rotator-type=password)
50    #[serde(rename = "rotated-username", skip_serializing_if = "Option::is_none")]
51    pub rotated_username: Option<String>,
52    /// How many days before the rotation of the item would you like to be notified
53    #[serde(rename = "rotation-event-in", skip_serializing_if = "Option::is_none")]
54    pub rotation_event_in: Option<Vec<String>>,
55    /// The Hour of the rotation in UTC
56    #[serde(rename = "rotation-hour", skip_serializing_if = "Option::is_none")]
57    pub rotation_hour: Option<i32>,
58    /// The number of days to wait between every automatic key rotation (1-365)
59    #[serde(rename = "rotation-interval", skip_serializing_if = "Option::is_none")]
60    pub rotation_interval: Option<String>,
61    /// The rotator type. options: [target/password]
62    #[serde(rename = "rotator-type")]
63    pub rotator_type: String,
64    /// Add tags attached to this object
65    #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
66    pub tags: Option<Vec<String>>,
67    /// The target name to associate
68    #[serde(rename = "target-name")]
69    pub target_name: String,
70    /// Authentication token (see `/auth` and `/configure`)
71    #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
72    pub token: Option<String>,
73    /// The universal identity token, Required only for universal_identity authentication
74    #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
75    pub uid_token: Option<String>,
76}
77
78impl RotatedSecretCreateRedis {
79    pub fn new(name: String, rotator_type: String, target_name: String) -> RotatedSecretCreateRedis {
80        RotatedSecretCreateRedis {
81            authentication_credentials: None,
82            auto_rotate: None,
83            delete_protection: None,
84            description: None,
85            item_custom_fields: None,
86            json: None,
87            key: None,
88            max_versions: None,
89            name,
90            password_length: None,
91            rotated_password: None,
92            rotated_username: None,
93            rotation_event_in: None,
94            rotation_hour: None,
95            rotation_interval: None,
96            rotator_type,
97            tags: None,
98            target_name,
99            token: None,
100            uid_token: None,
101        }
102    }
103}
104