Skip to main content

akeyless_api/models/
dynamic_secret_create_ping.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/// DynamicSecretCreatePing : dynamicSecretCreatePing is a command that creates ping dynamic secret
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct DynamicSecretCreatePing {
17    /// Protection from accidental deletion of this object [true/false]
18    #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
19    pub delete_protection: Option<String>,
20    /// Description of the object
21    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
22    pub description: Option<String>,
23    /// Additional custom fields to associate with the item
24    #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
25    pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
26    /// Set output format to JSON
27    #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
28    pub json: Option<bool>,
29    /// Dynamic secret name
30    #[serde(rename = "name")]
31    pub name: String,
32    /// Ping Federate administrative port
33    #[serde(rename = "ping-administrative-port", skip_serializing_if = "Option::is_none")]
34    pub ping_administrative_port: Option<String>,
35    /// Set a specific Access Token Management (ATM) instance for the created OAuth Client by providing the ATM Id. If no explicit value is given, the default pingfederate server ATM will be set.
36    #[serde(rename = "ping-atm-id", skip_serializing_if = "Option::is_none")]
37    pub ping_atm_id: Option<String>,
38    /// Ping Federate authorization port
39    #[serde(rename = "ping-authorization-port", skip_serializing_if = "Option::is_none")]
40    pub ping_authorization_port: Option<String>,
41    /// The subject DN of the client certificate. If no explicit value is given, the producer will create CA certificate and matched client certificate and return it as value. Used in conjunction with ping-issuer-dn (relevant for CLIENT_TLS_CERTIFICATE authentication method)
42    #[serde(rename = "ping-cert-subject-dn", skip_serializing_if = "Option::is_none")]
43    pub ping_cert_subject_dn: Option<String>,
44    /// OAuth Client Authentication Type [CLIENT_SECRET, PRIVATE_KEY_JWT, CLIENT_TLS_CERTIFICATE]
45    #[serde(rename = "ping-client-authentication-type", skip_serializing_if = "Option::is_none")]
46    pub ping_client_authentication_type: Option<String>,
47    /// Determines whether PingFederate requires a unique signed JWT from the client for each action (relevant for PRIVATE_KEY_JWT authentication method) [true/false]
48    #[serde(rename = "ping-enforce-replay-prevention", skip_serializing_if = "Option::is_none")]
49    pub ping_enforce_replay_prevention: Option<String>,
50    /// List of OAuth client grant types [IMPLICIT, AUTHORIZATION_CODE, CLIENT_CREDENTIALS, TOKEN_EXCHANGE, REFRESH_TOKEN, ASSERTION_GRANTS, PASSWORD, RESOURCE_OWNER_CREDENTIALS]. If no explicit value is given, AUTHORIZATION_CODE will be selected as default.
51    #[serde(rename = "ping-grant-types", skip_serializing_if = "Option::is_none")]
52    pub ping_grant_types: Option<Vec<String>>,
53    /// Issuer DN of trusted CA certificate that imported into Ping Federate server. You may select \\\"Trust Any\\\" to trust all the existing issuers in Ping Federate server. Used in conjunction with ping-cert-subject-dn (relevant for CLIENT_TLS_CERTIFICATE authentication method)
54    #[serde(rename = "ping-issuer-dn", skip_serializing_if = "Option::is_none")]
55    pub ping_issuer_dn: Option<String>,
56    /// Base64-encoded JSON Web Key Set (JWKS). If no explicit value is given, the producer will create JWKs and matched signed JWT (Sign Algo: RS256) and return it as value (relevant for PRIVATE_KEY_JWT authentication method)
57    #[serde(rename = "ping-jwks", skip_serializing_if = "Option::is_none")]
58    pub ping_jwks: Option<String>,
59    /// The URL of the JSON Web Key Set (JWKS). If no explicit value is given, the producer will create JWKs and matched signed JWT and return it as value (relevant for PRIVATE_KEY_JWT authentication method)
60    #[serde(rename = "ping-jwks-url", skip_serializing_if = "Option::is_none")]
61    pub ping_jwks_url: Option<String>,
62    /// Ping Federate privileged user password
63    #[serde(rename = "ping-password", skip_serializing_if = "Option::is_none")]
64    pub ping_password: Option<String>,
65    /// Ping Federate privileged user
66    #[serde(rename = "ping-privileged-user", skip_serializing_if = "Option::is_none")]
67    pub ping_privileged_user: Option<String>,
68    /// List of URIs to which the OAuth authorization server may redirect the resource owner's user agent after authorization is obtained. At least one redirection URI is required for the AUTHORIZATION_CODE and IMPLICIT grant types.
69    #[serde(rename = "ping-redirect-uris", skip_serializing_if = "Option::is_none")]
70    pub ping_redirect_uris: Option<Vec<String>>,
71    /// Limit the OAuth client to specific scopes list
72    #[serde(rename = "ping-restricted-scopes", skip_serializing_if = "Option::is_none")]
73    pub ping_restricted_scopes: Option<Vec<String>>,
74    /// The signing algorithm that the client must use to sign its request objects [RS256,RS384,RS512,ES256,ES384,ES512,PS256,PS384,PS512] If no explicit value is given, the client can use any of the supported signing algorithms (relevant for PRIVATE_KEY_JWT authentication method)
75    #[serde(rename = "ping-signing-algo", skip_serializing_if = "Option::is_none")]
76    pub ping_signing_algo: Option<String>,
77    /// Ping URL
78    #[serde(rename = "ping-url", skip_serializing_if = "Option::is_none")]
79    pub ping_url: Option<String>,
80    /// Dynamic producer encryption key
81    #[serde(rename = "producer-encryption-key-name", skip_serializing_if = "Option::is_none")]
82    pub producer_encryption_key_name: Option<String>,
83    /// Add tags attached to this object
84    #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
85    pub tags: Option<Vec<String>>,
86    /// Target name
87    #[serde(rename = "target-name", skip_serializing_if = "Option::is_none")]
88    pub target_name: Option<String>,
89    /// Authentication token (see `/auth` and `/configure`)
90    #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
91    pub token: Option<String>,
92    /// The universal identity token, Required only for universal_identity authentication
93    #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
94    pub uid_token: Option<String>,
95    /// The time from dynamic secret creation to expiration.
96    #[serde(rename = "user-ttl", skip_serializing_if = "Option::is_none")]
97    pub user_ttl: Option<String>,
98}
99
100impl DynamicSecretCreatePing {
101    /// dynamicSecretCreatePing is a command that creates ping dynamic secret
102    pub fn new(name: String) -> DynamicSecretCreatePing {
103        DynamicSecretCreatePing {
104            delete_protection: None,
105            description: None,
106            item_custom_fields: None,
107            json: None,
108            name,
109            ping_administrative_port: None,
110            ping_atm_id: None,
111            ping_authorization_port: None,
112            ping_cert_subject_dn: None,
113            ping_client_authentication_type: None,
114            ping_enforce_replay_prevention: None,
115            ping_grant_types: None,
116            ping_issuer_dn: None,
117            ping_jwks: None,
118            ping_jwks_url: None,
119            ping_password: None,
120            ping_privileged_user: None,
121            ping_redirect_uris: None,
122            ping_restricted_scopes: None,
123            ping_signing_algo: None,
124            ping_url: None,
125            producer_encryption_key_name: None,
126            tags: None,
127            target_name: None,
128            token: None,
129            uid_token: None,
130            user_ttl: None,
131        }
132    }
133}
134