1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct AuthMethodCreateKerberos {
17 #[serde(rename = "access-expires", skip_serializing_if = "Option::is_none")]
19 pub access_expires: Option<i64>,
20 #[serde(rename = "allowed-client-type", skip_serializing_if = "Option::is_none")]
22 pub allowed_client_type: Option<Vec<String>>,
23 #[serde(rename = "audit-logs-claims", skip_serializing_if = "Option::is_none")]
25 pub audit_logs_claims: Option<Vec<String>>,
26 #[serde(rename = "bind-dn", skip_serializing_if = "Option::is_none")]
27 pub bind_dn: Option<String>,
28 #[serde(rename = "bind-dn-password", skip_serializing_if = "Option::is_none")]
29 pub bind_dn_password: Option<String>,
30 #[serde(rename = "bound-ips", skip_serializing_if = "Option::is_none")]
32 pub bound_ips: Option<Vec<String>>,
33 #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
35 pub delete_protection: Option<String>,
36 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
38 pub description: Option<String>,
39 #[serde(rename = "expiration-event-in", skip_serializing_if = "Option::is_none")]
41 pub expiration_event_in: Option<Vec<String>>,
42 #[serde(rename = "force-sub-claims", skip_serializing_if = "Option::is_none")]
44 pub force_sub_claims: Option<bool>,
45 #[serde(rename = "group-attr", skip_serializing_if = "Option::is_none")]
46 pub group_attr: Option<String>,
47 #[serde(rename = "group-dn", skip_serializing_if = "Option::is_none")]
48 pub group_dn: Option<String>,
49 #[serde(rename = "group-filter", skip_serializing_if = "Option::is_none")]
50 pub group_filter: Option<String>,
51 #[serde(rename = "gw-bound-ips", skip_serializing_if = "Option::is_none")]
53 pub gw_bound_ips: Option<Vec<String>>,
54 #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
56 pub json: Option<bool>,
57 #[serde(rename = "jwt-ttl", skip_serializing_if = "Option::is_none")]
59 pub jwt_ttl: Option<i64>,
60 #[serde(rename = "keytab-file-data", skip_serializing_if = "Option::is_none")]
61 pub keytab_file_data: Option<String>,
62 #[serde(rename = "keytab-file-path", skip_serializing_if = "Option::is_none")]
63 pub keytab_file_path: Option<String>,
64 #[serde(rename = "krb5-conf-data", skip_serializing_if = "Option::is_none")]
65 pub krb5_conf_data: Option<String>,
66 #[serde(rename = "krb5-conf-path", skip_serializing_if = "Option::is_none")]
67 pub krb5_conf_path: Option<String>,
68 #[serde(rename = "ldap-anonymous-search", skip_serializing_if = "Option::is_none")]
69 pub ldap_anonymous_search: Option<bool>,
70 #[serde(rename = "ldap-ca-cert", skip_serializing_if = "Option::is_none")]
71 pub ldap_ca_cert: Option<String>,
72 #[serde(rename = "ldap-url", skip_serializing_if = "Option::is_none")]
73 pub ldap_url: Option<String>,
74 #[serde(rename = "name")]
76 pub name: String,
77 #[serde(rename = "product-type", skip_serializing_if = "Option::is_none")]
79 pub product_type: Option<Vec<String>>,
80 #[serde(rename = "subclaims-delimiters", skip_serializing_if = "Option::is_none")]
82 pub subclaims_delimiters: Option<Vec<String>>,
83 #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
85 pub token: Option<String>,
86 #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
88 pub uid_token: Option<String>,
89 #[serde(rename = "unique-identifier", skip_serializing_if = "Option::is_none")]
91 pub unique_identifier: Option<String>,
92 #[serde(rename = "user-attribute", skip_serializing_if = "Option::is_none")]
93 pub user_attribute: Option<String>,
94 #[serde(rename = "user-dn", skip_serializing_if = "Option::is_none")]
95 pub user_dn: Option<String>,
96}
97
98impl AuthMethodCreateKerberos {
99 pub fn new(name: String) -> AuthMethodCreateKerberos {
101 AuthMethodCreateKerberos {
102 access_expires: None,
103 allowed_client_type: None,
104 audit_logs_claims: None,
105 bind_dn: None,
106 bind_dn_password: None,
107 bound_ips: None,
108 delete_protection: None,
109 description: None,
110 expiration_event_in: None,
111 force_sub_claims: None,
112 group_attr: None,
113 group_dn: None,
114 group_filter: None,
115 gw_bound_ips: None,
116 json: None,
117 jwt_ttl: None,
118 keytab_file_data: None,
119 keytab_file_path: None,
120 krb5_conf_data: None,
121 krb5_conf_path: None,
122 ldap_anonymous_search: None,
123 ldap_ca_cert: None,
124 ldap_url: None,
125 name,
126 product_type: None,
127 subclaims_delimiters: None,
128 token: None,
129 uid_token: None,
130 unique_identifier: None,
131 user_attribute: None,
132 user_dn: None,
133 }
134 }
135}
136