bitwarden_api_api/models/
sso_configuration_data_request.rs

1/*
2 * Bitwarden Internal API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: latest
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct SsoConfigurationDataRequest {
17    #[serde(rename = "configType")]
18    pub config_type: models::SsoType,
19    #[serde(
20        rename = "memberDecryptionType",
21        skip_serializing_if = "Option::is_none"
22    )]
23    pub member_decryption_type: Option<models::MemberDecryptionType>,
24    #[serde(
25        rename = "keyConnectorEnabled",
26        skip_serializing_if = "Option::is_none"
27    )]
28    pub key_connector_enabled: Option<bool>,
29    #[serde(rename = "keyConnectorUrl", skip_serializing_if = "Option::is_none")]
30    pub key_connector_url: Option<String>,
31    #[serde(rename = "authority", skip_serializing_if = "Option::is_none")]
32    pub authority: Option<String>,
33    #[serde(rename = "clientId", skip_serializing_if = "Option::is_none")]
34    pub client_id: Option<String>,
35    #[serde(rename = "clientSecret", skip_serializing_if = "Option::is_none")]
36    pub client_secret: Option<String>,
37    #[serde(rename = "metadataAddress", skip_serializing_if = "Option::is_none")]
38    pub metadata_address: Option<String>,
39    #[serde(rename = "redirectBehavior", skip_serializing_if = "Option::is_none")]
40    pub redirect_behavior: Option<models::OpenIdConnectRedirectBehavior>,
41    #[serde(
42        rename = "getClaimsFromUserInfoEndpoint",
43        skip_serializing_if = "Option::is_none"
44    )]
45    pub get_claims_from_user_info_endpoint: Option<bool>,
46    #[serde(rename = "additionalScopes", skip_serializing_if = "Option::is_none")]
47    pub additional_scopes: Option<String>,
48    #[serde(
49        rename = "additionalUserIdClaimTypes",
50        skip_serializing_if = "Option::is_none"
51    )]
52    pub additional_user_id_claim_types: Option<String>,
53    #[serde(
54        rename = "additionalEmailClaimTypes",
55        skip_serializing_if = "Option::is_none"
56    )]
57    pub additional_email_claim_types: Option<String>,
58    #[serde(
59        rename = "additionalNameClaimTypes",
60        skip_serializing_if = "Option::is_none"
61    )]
62    pub additional_name_claim_types: Option<String>,
63    #[serde(rename = "acrValues", skip_serializing_if = "Option::is_none")]
64    pub acr_values: Option<String>,
65    #[serde(
66        rename = "expectedReturnAcrValue",
67        skip_serializing_if = "Option::is_none"
68    )]
69    pub expected_return_acr_value: Option<String>,
70    #[serde(rename = "spUniqueEntityId", skip_serializing_if = "Option::is_none")]
71    pub sp_unique_entity_id: Option<bool>,
72    #[serde(rename = "spNameIdFormat", skip_serializing_if = "Option::is_none")]
73    pub sp_name_id_format: Option<models::Saml2NameIdFormat>,
74    #[serde(
75        rename = "spOutboundSigningAlgorithm",
76        skip_serializing_if = "Option::is_none"
77    )]
78    pub sp_outbound_signing_algorithm: Option<String>,
79    #[serde(rename = "spSigningBehavior", skip_serializing_if = "Option::is_none")]
80    pub sp_signing_behavior: Option<models::Saml2SigningBehavior>,
81    #[serde(
82        rename = "spWantAssertionsSigned",
83        skip_serializing_if = "Option::is_none"
84    )]
85    pub sp_want_assertions_signed: Option<bool>,
86    #[serde(
87        rename = "spValidateCertificates",
88        skip_serializing_if = "Option::is_none"
89    )]
90    pub sp_validate_certificates: Option<bool>,
91    #[serde(
92        rename = "spMinIncomingSigningAlgorithm",
93        skip_serializing_if = "Option::is_none"
94    )]
95    pub sp_min_incoming_signing_algorithm: Option<String>,
96    #[serde(rename = "idpEntityId", skip_serializing_if = "Option::is_none")]
97    pub idp_entity_id: Option<String>,
98    #[serde(rename = "idpBindingType", skip_serializing_if = "Option::is_none")]
99    pub idp_binding_type: Option<models::Saml2BindingType>,
100    #[serde(
101        rename = "idpSingleSignOnServiceUrl",
102        skip_serializing_if = "Option::is_none"
103    )]
104    pub idp_single_sign_on_service_url: Option<String>,
105    #[serde(
106        rename = "idpSingleLogoutServiceUrl",
107        skip_serializing_if = "Option::is_none"
108    )]
109    pub idp_single_logout_service_url: Option<String>,
110    #[serde(
111        rename = "idpArtifactResolutionServiceUrl",
112        skip_serializing_if = "Option::is_none"
113    )]
114    pub idp_artifact_resolution_service_url: Option<String>,
115    #[serde(rename = "idpX509PublicCert", skip_serializing_if = "Option::is_none")]
116    pub idp_x509_public_cert: Option<String>,
117    #[serde(
118        rename = "idpOutboundSigningAlgorithm",
119        skip_serializing_if = "Option::is_none"
120    )]
121    pub idp_outbound_signing_algorithm: Option<String>,
122    #[serde(
123        rename = "idpAllowUnsolicitedAuthnResponse",
124        skip_serializing_if = "Option::is_none"
125    )]
126    pub idp_allow_unsolicited_authn_response: Option<bool>,
127    #[serde(
128        rename = "idpDisableOutboundLogoutRequests",
129        skip_serializing_if = "Option::is_none"
130    )]
131    pub idp_disable_outbound_logout_requests: Option<bool>,
132    #[serde(
133        rename = "idpWantAuthnRequestsSigned",
134        skip_serializing_if = "Option::is_none"
135    )]
136    pub idp_want_authn_requests_signed: Option<bool>,
137}
138
139impl SsoConfigurationDataRequest {
140    pub fn new(config_type: models::SsoType) -> SsoConfigurationDataRequest {
141        SsoConfigurationDataRequest {
142            config_type,
143            member_decryption_type: None,
144            key_connector_enabled: None,
145            key_connector_url: None,
146            authority: None,
147            client_id: None,
148            client_secret: None,
149            metadata_address: None,
150            redirect_behavior: None,
151            get_claims_from_user_info_endpoint: None,
152            additional_scopes: None,
153            additional_user_id_claim_types: None,
154            additional_email_claim_types: None,
155            additional_name_claim_types: None,
156            acr_values: None,
157            expected_return_acr_value: None,
158            sp_unique_entity_id: None,
159            sp_name_id_format: None,
160            sp_outbound_signing_algorithm: None,
161            sp_signing_behavior: None,
162            sp_want_assertions_signed: None,
163            sp_validate_certificates: None,
164            sp_min_incoming_signing_algorithm: None,
165            idp_entity_id: None,
166            idp_binding_type: None,
167            idp_single_sign_on_service_url: None,
168            idp_single_logout_service_url: None,
169            idp_artifact_resolution_service_url: None,
170            idp_x509_public_cert: None,
171            idp_outbound_signing_algorithm: None,
172            idp_allow_unsolicited_authn_response: None,
173            idp_disable_outbound_logout_requests: None,
174            idp_want_authn_requests_signed: None,
175        }
176    }
177}