Skip to main content

rustack_sts_model/
input.rs

1//! Auto-generated from AWS STS Smithy model. DO NOT EDIT.
2
3use serde::{Deserialize, Serialize};
4
5use crate::types::{PolicyDescriptorType, ProvidedContext, Tag};
6
7/// STS AssumeRoleInput.
8#[derive(Debug, Clone, Default, Serialize, Deserialize)]
9#[serde(rename_all = "PascalCase")]
10pub struct AssumeRoleInput {
11    #[serde(skip_serializing_if = "Option::is_none")]
12    pub duration_seconds: Option<i32>,
13    #[serde(skip_serializing_if = "Option::is_none")]
14    pub external_id: Option<String>,
15    #[serde(skip_serializing_if = "Option::is_none")]
16    pub policy: Option<String>,
17    #[serde(default, skip_serializing_if = "Vec::is_empty")]
18    pub policy_arns: Vec<PolicyDescriptorType>,
19    #[serde(default, skip_serializing_if = "Vec::is_empty")]
20    pub provided_contexts: Vec<ProvidedContext>,
21    pub role_arn: String,
22    pub role_session_name: String,
23    #[serde(skip_serializing_if = "Option::is_none")]
24    pub serial_number: Option<String>,
25    #[serde(skip_serializing_if = "Option::is_none")]
26    pub source_identity: Option<String>,
27    #[serde(default, skip_serializing_if = "Vec::is_empty")]
28    pub tags: Vec<Tag>,
29    #[serde(skip_serializing_if = "Option::is_none")]
30    pub token_code: Option<String>,
31    #[serde(default, skip_serializing_if = "Vec::is_empty")]
32    pub transitive_tag_keys: Vec<String>,
33}
34
35/// STS AssumeRoleWithSAMLInput.
36#[derive(Debug, Clone, Default, Serialize, Deserialize)]
37#[serde(rename_all = "PascalCase")]
38pub struct AssumeRoleWithSAMLInput {
39    #[serde(skip_serializing_if = "Option::is_none")]
40    pub duration_seconds: Option<i32>,
41    #[serde(skip_serializing_if = "Option::is_none")]
42    pub policy: Option<String>,
43    #[serde(default, skip_serializing_if = "Vec::is_empty")]
44    pub policy_arns: Vec<PolicyDescriptorType>,
45    pub principal_arn: String,
46    pub role_arn: String,
47    #[serde(rename = "SAMLAssertion")]
48    pub saml_assertion: String,
49}
50
51/// STS AssumeRoleWithWebIdentityInput.
52#[derive(Debug, Clone, Default, Serialize, Deserialize)]
53#[serde(rename_all = "PascalCase")]
54pub struct AssumeRoleWithWebIdentityInput {
55    #[serde(skip_serializing_if = "Option::is_none")]
56    pub duration_seconds: Option<i32>,
57    #[serde(skip_serializing_if = "Option::is_none")]
58    pub policy: Option<String>,
59    #[serde(default, skip_serializing_if = "Vec::is_empty")]
60    pub policy_arns: Vec<PolicyDescriptorType>,
61    #[serde(skip_serializing_if = "Option::is_none")]
62    pub provider_id: Option<String>,
63    pub role_arn: String,
64    pub role_session_name: String,
65    pub web_identity_token: String,
66}
67
68/// STS DecodeAuthorizationMessageInput.
69#[derive(Debug, Clone, Default, Serialize, Deserialize)]
70#[serde(rename_all = "PascalCase")]
71pub struct DecodeAuthorizationMessageInput {
72    pub encoded_message: String,
73}
74
75/// STS GetAccessKeyInfoInput.
76#[derive(Debug, Clone, Default, Serialize, Deserialize)]
77#[serde(rename_all = "PascalCase")]
78pub struct GetAccessKeyInfoInput {
79    pub access_key_id: String,
80}
81
82/// STS GetCallerIdentityInput.
83#[derive(Debug, Clone, Default, Serialize, Deserialize)]
84#[serde(rename_all = "PascalCase")]
85pub struct GetCallerIdentityInput {}
86
87/// STS GetFederationTokenInput.
88#[derive(Debug, Clone, Default, Serialize, Deserialize)]
89#[serde(rename_all = "PascalCase")]
90pub struct GetFederationTokenInput {
91    #[serde(skip_serializing_if = "Option::is_none")]
92    pub duration_seconds: Option<i32>,
93    pub name: String,
94    #[serde(skip_serializing_if = "Option::is_none")]
95    pub policy: Option<String>,
96    #[serde(default, skip_serializing_if = "Vec::is_empty")]
97    pub policy_arns: Vec<PolicyDescriptorType>,
98    #[serde(default, skip_serializing_if = "Vec::is_empty")]
99    pub tags: Vec<Tag>,
100}
101
102/// STS GetSessionTokenInput.
103#[derive(Debug, Clone, Default, Serialize, Deserialize)]
104#[serde(rename_all = "PascalCase")]
105pub struct GetSessionTokenInput {
106    #[serde(skip_serializing_if = "Option::is_none")]
107    pub duration_seconds: Option<i32>,
108    #[serde(skip_serializing_if = "Option::is_none")]
109    pub serial_number: Option<String>,
110    #[serde(skip_serializing_if = "Option::is_none")]
111    pub token_code: Option<String>,
112}