Skip to main content

akeyless_api/models/
target_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#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct TargetUpdateAws {
16    /// AWS secret access key
17    #[serde(rename = "access-key")]
18    pub access_key: String,
19    /// AWS access key ID
20    #[serde(rename = "access-key-id")]
21    pub access_key_id: String,
22    /// Description of the object
23    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
24    pub description: Option<String>,
25    /// A unique auto-generated value used in your AWS account when configuring your AWS IAM role to securely delegate access to Akeyless. Relevant only when using GW cloud ID
26    #[serde(rename = "generate-external-id", skip_serializing_if = "Option::is_none")]
27    pub generate_external_id: Option<bool>,
28    /// Set output format to JSON
29    #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
30    pub json: Option<bool>,
31    /// Whether to keep previous version [true/false]. If not set, use default according to account settings
32    #[serde(rename = "keep-prev-version", skip_serializing_if = "Option::is_none")]
33    pub keep_prev_version: Option<String>,
34    /// The name of a key that used to encrypt the target 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    /// Target name
41    #[serde(rename = "name")]
42    pub name: String,
43    /// New target name
44    #[serde(rename = "new-name", skip_serializing_if = "Option::is_none")]
45    pub new_name: Option<String>,
46    /// AWS region
47    #[serde(rename = "region", skip_serializing_if = "Option::is_none")]
48    pub region: Option<String>,
49    /// AWS IAM role identifier that Gateway will assume in your AWS account, relevant only when using external ID
50    #[serde(rename = "role-arn", skip_serializing_if = "Option::is_none")]
51    pub role_arn: Option<String>,
52    /// Required only for temporary security credentials retrieved using STS
53    #[serde(rename = "session-token", skip_serializing_if = "Option::is_none")]
54    pub session_token: Option<String>,
55    /// Authentication token (see `/auth` and `/configure`)
56    #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
57    pub token: Option<String>,
58    /// The universal identity token, Required only for universal_identity authentication
59    #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
60    pub uid_token: Option<String>,
61    /// Use the GW's Cloud IAM
62    #[serde(rename = "use-gw-cloud-identity", skip_serializing_if = "Option::is_none")]
63    pub use_gw_cloud_identity: Option<bool>,
64}
65
66impl TargetUpdateAws {
67    pub fn new(access_key: String, access_key_id: String, name: String) -> TargetUpdateAws {
68        TargetUpdateAws {
69            access_key,
70            access_key_id,
71            description: None,
72            generate_external_id: None,
73            json: None,
74            keep_prev_version: None,
75            key: None,
76            max_versions: None,
77            name,
78            new_name: None,
79            region: None,
80            role_arn: None,
81            session_token: None,
82            token: None,
83            uid_token: None,
84            use_gw_cloud_identity: None,
85        }
86    }
87}
88