Skip to main content

akeyless_api/models/
auth.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 Auth {
16    /// Access ID
17    #[serde(rename = "access-id", skip_serializing_if = "Option::is_none")]
18    pub access_id: Option<String>,
19    /// Access key (relevant only for access-type=access_key)
20    #[serde(rename = "access-key", skip_serializing_if = "Option::is_none")]
21    pub access_key: Option<String>,
22    /// Access Type (access_key/password/saml/ldap/k8s/azure_ad/oidc/aws_iam/universal_identity/jwt/gcp/cert/oci/kerberos)
23    #[serde(rename = "access-type", skip_serializing_if = "Option::is_none")]
24    pub access_type: Option<String>,
25    /// Account id (relevant only for access-type=password where the email address is associated with more than one account)
26    #[serde(rename = "account-id", skip_serializing_if = "Option::is_none")]
27    pub account_id: Option<String>,
28    /// Email (relevant only for access-type=password)
29    #[serde(rename = "admin-email", skip_serializing_if = "Option::is_none")]
30    pub admin_email: Option<String>,
31    /// Password (relevant only for access-type=password)
32    #[serde(rename = "admin-password", skip_serializing_if = "Option::is_none")]
33    pub admin_password: Option<String>,
34    /// Azure cloud environment to use. Values: AzureCloud (default), AzureUSGovernment, AzureChinaCloud.
35    #[serde(rename = "azure-cloud", skip_serializing_if = "Option::is_none")]
36    pub azure_cloud: Option<String>,
37    /// Certificate challenge encoded in base64. (relevant only for access-type=cert)
38    #[serde(rename = "cert-challenge", skip_serializing_if = "Option::is_none")]
39    pub cert_challenge: Option<String>,
40    /// Certificate data encoded in base64. Used if file was not provided. (relevant only for access-type=cert)
41    #[serde(rename = "cert-data", skip_serializing_if = "Option::is_none")]
42    pub cert_data: Option<String>,
43    /// The cloud identity (relevant only for access-type=azure_ad,aws_iam,gcp)
44    #[serde(rename = "cloud-id", skip_serializing_if = "Option::is_none")]
45    pub cloud_id: Option<String>,
46    #[serde(rename = "debug", skip_serializing_if = "Option::is_none")]
47    pub debug: Option<bool>,
48    /// Disable the FAST negotiation in the Kerberos authentication method
49    #[serde(rename = "disable-pafxfast", skip_serializing_if = "Option::is_none")]
50    pub disable_pafxfast: Option<String>,
51    /// The service principal name of the gateway as registered in LDAP (i.e., HTTP/gateway)
52    #[serde(rename = "gateway-spn", skip_serializing_if = "Option::is_none")]
53    pub gateway_spn: Option<String>,
54    /// Gateway URL relevant only for access-type=k8s/oauth2/saml/oidc
55    #[serde(rename = "gateway-url", skip_serializing_if = "Option::is_none")]
56    pub gateway_url: Option<String>,
57    /// GCP JWT audience
58    #[serde(rename = "gcp-audience", skip_serializing_if = "Option::is_none")]
59    pub gcp_audience: Option<String>,
60    /// Set output format to JSON
61    #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
62    pub json: Option<bool>,
63    /// The Json Web Token (relevant only for access-type=jwt/oidc)
64    #[serde(rename = "jwt", skip_serializing_if = "Option::is_none")]
65    pub jwt: Option<String>,
66    /// The K8S Auth config name (relevant only for access-type=k8s)
67    #[serde(rename = "k8s-auth-config-name", skip_serializing_if = "Option::is_none")]
68    pub k8s_auth_config_name: Option<String>,
69    /// The K8S service account token. (relevant only for access-type=k8s)
70    #[serde(rename = "k8s-service-account-token", skip_serializing_if = "Option::is_none")]
71    pub k8s_service_account_token: Option<String>,
72    /// KerberosToken represents a Kerberos token generated for the gateway SPN (Service Principal Name).
73    #[serde(rename = "kerberos-token", skip_serializing_if = "Option::is_none")]
74    pub kerberos_token: Option<String>,
75    /// TThe username for the entry within the keytab to authenticate via Kerberos
76    #[serde(rename = "kerberos-username", skip_serializing_if = "Option::is_none")]
77    pub kerberos_username: Option<String>,
78    /// Private key data encoded in base64. Used if file was not provided.(relevant only for access-type=cert)
79    #[serde(rename = "key-data", skip_serializing_if = "Option::is_none")]
80    pub key_data: Option<String>,
81    /// Base64-encoded content of a valid keytab file, containing the service account's entry.
82    #[serde(rename = "keytab-data", skip_serializing_if = "Option::is_none")]
83    pub keytab_data: Option<String>,
84    /// Base64-encoded content of a valid krb5.conf file, specifying the settings and parameters required for Kerberos authentication.
85    #[serde(rename = "krb5-conf-data", skip_serializing_if = "Option::is_none")]
86    pub krb5_conf_data: Option<String>,
87    /// LDAP password (relevant only for access-type=ldap)
88    #[serde(rename = "ldap-password", skip_serializing_if = "Option::is_none")]
89    pub ldap_password: Option<String>,
90    /// The type of the OCI configuration to use [instance/apikey/resource] (relevant only for access-type=oci)
91    #[serde(rename = "oci-auth-type", skip_serializing_if = "Option::is_none")]
92    pub oci_auth_type: Option<String>,
93    /// A list of Oracle Cloud IDs groups (relevant only for access-type=oci)
94    #[serde(rename = "oci-group-ocid", skip_serializing_if = "Option::is_none")]
95    pub oci_group_ocid: Option<Vec<String>>,
96    #[serde(rename = "otp", skip_serializing_if = "Option::is_none")]
97    pub otp: Option<String>,
98    /// Signed certificate challenge encoded in base64. (relevant only for access-type=cert)
99    #[serde(rename = "signed-cert-challenge", skip_serializing_if = "Option::is_none")]
100    pub signed_cert_challenge: Option<String>,
101    /// The universal_identity token (relevant only for access-type=universal_identity)
102    #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
103    pub uid_token: Option<String>,
104    /// Returns a link to complete the authentication remotely (relevant only for access-type=saml/oidc)
105    #[serde(rename = "use-remote-browser", skip_serializing_if = "Option::is_none")]
106    pub use_remote_browser: Option<bool>,
107    /// LDAP username (relevant only for access-type=ldap)
108    #[serde(rename = "username", skip_serializing_if = "Option::is_none")]
109    pub username: Option<String>,
110}
111
112impl Auth {
113    pub fn new() -> Auth {
114        Auth {
115            access_id: None,
116            access_key: None,
117            access_type: None,
118            account_id: None,
119            admin_email: None,
120            admin_password: None,
121            azure_cloud: None,
122            cert_challenge: None,
123            cert_data: None,
124            cloud_id: None,
125            debug: None,
126            disable_pafxfast: None,
127            gateway_spn: None,
128            gateway_url: None,
129            gcp_audience: None,
130            json: None,
131            jwt: None,
132            k8s_auth_config_name: None,
133            k8s_service_account_token: None,
134            kerberos_token: None,
135            kerberos_username: None,
136            key_data: None,
137            keytab_data: None,
138            krb5_conf_data: None,
139            ldap_password: None,
140            oci_auth_type: None,
141            oci_group_ocid: None,
142            otp: None,
143            signed_cert_challenge: None,
144            uid_token: None,
145            use_remote_browser: None,
146            username: None,
147        }
148    }
149}
150