@aws-sdk/client-sts 3.33.0 → 3.36.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/{dist/cjs → dist-cjs}/STS.js +1 -9
  3. package/dist-cjs/STSClient.js +34 -0
  4. package/dist-cjs/commands/AssumeRoleCommand.js +38 -0
  5. package/dist-cjs/commands/AssumeRoleWithSAMLCommand.js +36 -0
  6. package/dist-cjs/commands/AssumeRoleWithWebIdentityCommand.js +36 -0
  7. package/dist-cjs/commands/DecodeAuthorizationMessageCommand.js +38 -0
  8. package/dist-cjs/commands/GetAccessKeyInfoCommand.js +38 -0
  9. package/dist-cjs/commands/GetCallerIdentityCommand.js +38 -0
  10. package/dist-cjs/commands/GetFederationTokenCommand.js +38 -0
  11. package/dist-cjs/commands/GetSessionTokenCommand.js +38 -0
  12. package/{dist/cjs → dist-cjs}/defaultRoleAssumers.js +0 -17
  13. package/{dist/cjs → dist-cjs}/defaultStsRoleAssumers.js +0 -21
  14. package/{dist/cjs → dist-cjs}/endpoints.js +0 -1
  15. package/{dist/cjs → dist-cjs}/index.js +0 -1
  16. package/{dist/cjs → dist-cjs}/models/index.js +0 -1
  17. package/{dist/cjs → dist-cjs}/models/models_0.js +0 -88
  18. package/{dist/cjs → dist-cjs}/protocols/Aws_query.js +22 -25
  19. package/{dist/cjs → dist-cjs}/runtimeConfig.browser.js +1 -5
  20. package/{dist/cjs → dist-cjs}/runtimeConfig.js +1 -5
  21. package/{dist/cjs → dist-cjs}/runtimeConfig.native.js +0 -4
  22. package/{dist/cjs → dist-cjs}/runtimeConfig.shared.js +1 -5
  23. package/{dist/es → dist-es}/STS.js +2 -10
  24. package/{dist/es → dist-es}/STSClient.js +2 -15
  25. package/dist-es/commands/AssumeRoleCommand.js +41 -0
  26. package/dist-es/commands/AssumeRoleWithSAMLCommand.js +39 -0
  27. package/dist-es/commands/AssumeRoleWithWebIdentityCommand.js +39 -0
  28. package/dist-es/commands/DecodeAuthorizationMessageCommand.js +41 -0
  29. package/dist-es/commands/GetAccessKeyInfoCommand.js +41 -0
  30. package/{dist/es → dist-es}/commands/GetCallerIdentityCommand.js +4 -39
  31. package/dist-es/commands/GetFederationTokenCommand.js +41 -0
  32. package/dist-es/commands/GetSessionTokenCommand.js +41 -0
  33. package/dist-es/defaultRoleAssumers.js +16 -0
  34. package/{dist/es → dist-es}/defaultStsRoleAssumers.js +10 -32
  35. package/{dist/es → dist-es}/endpoints.js +1 -2
  36. package/{dist/types/index.d.ts → dist-es/index.js} +0 -0
  37. package/{dist/types/models/index.d.ts → dist-es/models/index.js} +0 -0
  38. package/{dist/es → dist-es}/models/models_0.js +0 -88
  39. package/{dist/es → dist-es}/protocols/Aws_query.js +152 -155
  40. package/{dist/es → dist-es}/runtimeConfig.browser.js +1 -5
  41. package/{dist/es → dist-es}/runtimeConfig.js +1 -5
  42. package/{dist/es → dist-es}/runtimeConfig.native.js +0 -4
  43. package/{dist/es → dist-es}/runtimeConfig.shared.js +1 -5
  44. package/{dist/types → dist-types}/STS.d.ts +2 -2
  45. package/{dist/types → dist-types}/STSClient.d.ts +8 -8
  46. package/{dist/types → dist-types}/commands/AssumeRoleCommand.d.ts +3 -3
  47. package/{dist/types → dist-types}/commands/AssumeRoleWithSAMLCommand.d.ts +3 -3
  48. package/{dist/types → dist-types}/commands/AssumeRoleWithWebIdentityCommand.d.ts +3 -3
  49. package/{dist/types → dist-types}/commands/DecodeAuthorizationMessageCommand.d.ts +3 -3
  50. package/{dist/types → dist-types}/commands/GetAccessKeyInfoCommand.d.ts +3 -3
  51. package/{dist/types → dist-types}/commands/GetCallerIdentityCommand.d.ts +3 -3
  52. package/{dist/types → dist-types}/commands/GetFederationTokenCommand.d.ts +3 -3
  53. package/{dist/types → dist-types}/commands/GetSessionTokenCommand.d.ts +3 -3
  54. package/{dist/types → dist-types}/defaultRoleAssumers.d.ts +0 -0
  55. package/{dist/types → dist-types}/defaultStsRoleAssumers.d.ts +0 -0
  56. package/{dist/types → dist-types}/endpoints.d.ts +0 -0
  57. package/{index.ts → dist-types/index.d.ts} +0 -0
  58. package/{models/index.ts → dist-types/models/index.d.ts} +0 -0
  59. package/{dist/types → dist-types}/models/models_0.d.ts +0 -0
  60. package/{dist/types → dist-types}/protocols/Aws_query.d.ts +2 -2
  61. package/{dist/types → dist-types}/runtimeConfig.browser.d.ts +0 -0
  62. package/{dist/types → dist-types}/runtimeConfig.d.ts +0 -0
  63. package/{dist/types → dist-types}/runtimeConfig.native.d.ts +0 -0
  64. package/{dist/types → dist-types}/runtimeConfig.shared.d.ts +0 -0
  65. package/dist-types/ts3.4/STS.d.ts +45 -0
  66. package/{dist/types → dist-types}/ts3.4/STSClient.d.ts +32 -101
  67. package/dist-types/ts3.4/commands/AssumeRoleCommand.d.ts +17 -0
  68. package/dist-types/ts3.4/commands/AssumeRoleWithSAMLCommand.d.ts +17 -0
  69. package/dist-types/ts3.4/commands/AssumeRoleWithWebIdentityCommand.d.ts +17 -0
  70. package/dist-types/ts3.4/commands/DecodeAuthorizationMessageCommand.d.ts +17 -0
  71. package/dist-types/ts3.4/commands/GetAccessKeyInfoCommand.d.ts +17 -0
  72. package/dist-types/ts3.4/commands/GetCallerIdentityCommand.d.ts +17 -0
  73. package/dist-types/ts3.4/commands/GetFederationTokenCommand.d.ts +17 -0
  74. package/dist-types/ts3.4/commands/GetSessionTokenCommand.d.ts +17 -0
  75. package/dist-types/ts3.4/defaultRoleAssumers.d.ts +8 -0
  76. package/{dist/types → dist-types}/ts3.4/defaultStsRoleAssumers.d.ts +6 -25
  77. package/{dist/types → dist-types}/ts3.4/endpoints.d.ts +0 -0
  78. package/{dist/types → dist-types}/ts3.4/index.d.ts +0 -0
  79. package/{dist/types → dist-types}/ts3.4/models/index.d.ts +0 -0
  80. package/dist-types/ts3.4/models/models_0.d.ts +367 -0
  81. package/{dist/types → dist-types}/ts3.4/protocols/Aws_query.d.ts +2 -2
  82. package/{dist/types → dist-types}/ts3.4/runtimeConfig.browser.d.ts +1 -3
  83. package/{dist/types → dist-types}/ts3.4/runtimeConfig.d.ts +1 -3
  84. package/{dist/types → dist-types}/ts3.4/runtimeConfig.native.d.ts +1 -3
  85. package/{dist/types → dist-types}/ts3.4/runtimeConfig.shared.d.ts +1 -3
  86. package/package.json +52 -49
  87. package/STS.ts +0 -896
  88. package/STSClient.ts +0 -263
  89. package/commands/AssumeRoleCommand.ts +0 -176
  90. package/commands/AssumeRoleWithSAMLCommand.ts +0 -225
  91. package/commands/AssumeRoleWithWebIdentityCommand.ts +0 -232
  92. package/commands/DecodeAuthorizationMessageCommand.ts +0 -134
  93. package/commands/GetAccessKeyInfoCommand.ts +0 -113
  94. package/commands/GetCallerIdentityCommand.ts +0 -105
  95. package/commands/GetFederationTokenCommand.ts +0 -234
  96. package/commands/GetSessionTokenCommand.ts +0 -147
  97. package/defaultRoleAssumers.spec.ts +0 -148
  98. package/defaultRoleAssumers.ts +0 -41
  99. package/defaultStsRoleAssumers.ts +0 -126
  100. package/dist/cjs/STS.js.map +0 -1
  101. package/dist/cjs/STSClient.js +0 -47
  102. package/dist/cjs/STSClient.js.map +0 -1
  103. package/dist/cjs/commands/AssumeRoleCommand.js +0 -146
  104. package/dist/cjs/commands/AssumeRoleCommand.js.map +0 -1
  105. package/dist/cjs/commands/AssumeRoleWithSAMLCommand.js +0 -192
  106. package/dist/cjs/commands/AssumeRoleWithSAMLCommand.js.map +0 -1
  107. package/dist/cjs/commands/AssumeRoleWithWebIdentityCommand.js +0 -196
  108. package/dist/cjs/commands/AssumeRoleWithWebIdentityCommand.js.map +0 -1
  109. package/dist/cjs/commands/DecodeAuthorizationMessageCommand.js +0 -98
  110. package/dist/cjs/commands/DecodeAuthorizationMessageCommand.js.map +0 -1
  111. package/dist/cjs/commands/GetAccessKeyInfoCommand.js +0 -80
  112. package/dist/cjs/commands/GetAccessKeyInfoCommand.js.map +0 -1
  113. package/dist/cjs/commands/GetCallerIdentityCommand.js +0 -72
  114. package/dist/cjs/commands/GetCallerIdentityCommand.js.map +0 -1
  115. package/dist/cjs/commands/GetFederationTokenCommand.js +0 -201
  116. package/dist/cjs/commands/GetFederationTokenCommand.js.map +0 -1
  117. package/dist/cjs/commands/GetSessionTokenCommand.js +0 -114
  118. package/dist/cjs/commands/GetSessionTokenCommand.js.map +0 -1
  119. package/dist/cjs/defaultRoleAssumers.js.map +0 -1
  120. package/dist/cjs/defaultRoleAssumers.spec.js +0 -135
  121. package/dist/cjs/defaultRoleAssumers.spec.js.map +0 -1
  122. package/dist/cjs/defaultStsRoleAssumers.js.map +0 -1
  123. package/dist/cjs/endpoints.js.map +0 -1
  124. package/dist/cjs/index.js.map +0 -1
  125. package/dist/cjs/models/index.js.map +0 -1
  126. package/dist/cjs/models/models_0.js.map +0 -1
  127. package/dist/cjs/package.json +0 -93
  128. package/dist/cjs/protocols/Aws_query.js.map +0 -1
  129. package/dist/cjs/runtimeConfig.browser.js.map +0 -1
  130. package/dist/cjs/runtimeConfig.js.map +0 -1
  131. package/dist/cjs/runtimeConfig.native.js.map +0 -1
  132. package/dist/cjs/runtimeConfig.shared.js.map +0 -1
  133. package/dist/es/STS.js.map +0 -1
  134. package/dist/es/STSClient.js.map +0 -1
  135. package/dist/es/commands/AssumeRoleCommand.js +0 -150
  136. package/dist/es/commands/AssumeRoleCommand.js.map +0 -1
  137. package/dist/es/commands/AssumeRoleWithSAMLCommand.js +0 -196
  138. package/dist/es/commands/AssumeRoleWithSAMLCommand.js.map +0 -1
  139. package/dist/es/commands/AssumeRoleWithWebIdentityCommand.js +0 -200
  140. package/dist/es/commands/AssumeRoleWithWebIdentityCommand.js.map +0 -1
  141. package/dist/es/commands/DecodeAuthorizationMessageCommand.js +0 -102
  142. package/dist/es/commands/DecodeAuthorizationMessageCommand.js.map +0 -1
  143. package/dist/es/commands/GetAccessKeyInfoCommand.js +0 -84
  144. package/dist/es/commands/GetAccessKeyInfoCommand.js.map +0 -1
  145. package/dist/es/commands/GetCallerIdentityCommand.js.map +0 -1
  146. package/dist/es/commands/GetFederationTokenCommand.js +0 -205
  147. package/dist/es/commands/GetFederationTokenCommand.js.map +0 -1
  148. package/dist/es/commands/GetSessionTokenCommand.js +0 -118
  149. package/dist/es/commands/GetSessionTokenCommand.js.map +0 -1
  150. package/dist/es/defaultRoleAssumers.js +0 -33
  151. package/dist/es/defaultRoleAssumers.js.map +0 -1
  152. package/dist/es/defaultRoleAssumers.spec.js +0 -142
  153. package/dist/es/defaultRoleAssumers.spec.js.map +0 -1
  154. package/dist/es/defaultStsRoleAssumers.js.map +0 -1
  155. package/dist/es/endpoints.js.map +0 -1
  156. package/dist/es/index.js +0 -13
  157. package/dist/es/index.js.map +0 -1
  158. package/dist/es/models/index.js +0 -2
  159. package/dist/es/models/index.js.map +0 -1
  160. package/dist/es/models/models_0.js.map +0 -1
  161. package/dist/es/package.json +0 -93
  162. package/dist/es/protocols/Aws_query.js.map +0 -1
  163. package/dist/es/runtimeConfig.browser.js.map +0 -1
  164. package/dist/es/runtimeConfig.js.map +0 -1
  165. package/dist/es/runtimeConfig.native.js.map +0 -1
  166. package/dist/es/runtimeConfig.shared.js.map +0 -1
  167. package/dist/types/defaultRoleAssumers.spec.d.ts +0 -1
  168. package/dist/types/ts3.4/STS.d.ts +0 -666
  169. package/dist/types/ts3.4/commands/AssumeRoleCommand.d.ts +0 -118
  170. package/dist/types/ts3.4/commands/AssumeRoleWithSAMLCommand.d.ts +0 -166
  171. package/dist/types/ts3.4/commands/AssumeRoleWithWebIdentityCommand.d.ts +0 -170
  172. package/dist/types/ts3.4/commands/DecodeAuthorizationMessageCommand.d.ts +0 -70
  173. package/dist/types/ts3.4/commands/GetAccessKeyInfoCommand.d.ts +0 -52
  174. package/dist/types/ts3.4/commands/GetCallerIdentityCommand.d.ts +0 -44
  175. package/dist/types/ts3.4/commands/GetFederationTokenCommand.d.ts +0 -173
  176. package/dist/types/ts3.4/commands/GetSessionTokenCommand.d.ts +0 -86
  177. package/dist/types/ts3.4/defaultRoleAssumers.d.ts +0 -19
  178. package/dist/types/ts3.4/defaultRoleAssumers.spec.d.ts +0 -1
  179. package/dist/types/ts3.4/models/models_0.d.ts +0 -1192
  180. package/endpoints.ts +0 -91
  181. package/jest.config.js +0 -4
  182. package/models/models_0.ts +0 -1361
  183. package/protocols/Aws_query.ts +0 -1513
  184. package/runtimeConfig.browser.ts +0 -40
  185. package/runtimeConfig.native.ts +0 -16
  186. package/runtimeConfig.shared.ts +0 -16
  187. package/runtimeConfig.ts +0 -45
  188. package/tsconfig.es.json +0 -12
  189. package/tsconfig.json +0 -32
@@ -1,1192 +0,0 @@
1
- import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException } from "@aws-sdk/types";
2
- /**
3
- * <p>The identifiers for the temporary security credentials that the operation
4
- * returns.</p>
5
- */
6
- export interface AssumedRoleUser {
7
- /**
8
- * <p>A unique identifier that contains the role ID and the role session name of the role that
9
- * is being assumed. The role ID is generated by Amazon Web Services when the role is created.</p>
10
- */
11
- AssumedRoleId: string | undefined;
12
- /**
13
- * <p>The ARN of the temporary security credentials that are returned from the <a>AssumeRole</a> action. For more information about ARNs and how to use them in
14
- * policies, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html">IAM Identifiers</a> in the
15
- * <i>IAM User Guide</i>.</p>
16
- */
17
- Arn: string | undefined;
18
- }
19
- export declare namespace AssumedRoleUser {
20
- /**
21
- * @internal
22
- */
23
- const filterSensitiveLog: (obj: AssumedRoleUser) => any;
24
- }
25
- /**
26
- * <p>A reference to the IAM managed policy that is passed as a session policy for a role
27
- * session or a federated user session.</p>
28
- */
29
- export interface PolicyDescriptorType {
30
- /**
31
- * <p>The Amazon Resource Name (ARN) of the IAM managed policy to use as a session policy
32
- * for the role. For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services
33
- * Service Namespaces</a> in the <i>Amazon Web Services General Reference</i>.</p>
34
- */
35
- arn?: string;
36
- }
37
- export declare namespace PolicyDescriptorType {
38
- /**
39
- * @internal
40
- */
41
- const filterSensitiveLog: (obj: PolicyDescriptorType) => any;
42
- }
43
- /**
44
- * <p>You can pass custom key-value pair attributes when you assume a role or federate a user.
45
- * These are called session tags. You can then use the session tags to control access to
46
- * resources. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html">Tagging STS Sessions</a> in the
47
- * <i>IAM User Guide</i>.</p>
48
- */
49
- export interface Tag {
50
- /**
51
- * <p>The key for a session tag.</p>
52
- * <p>You can pass up to 50 session tags. The plain text session tag keys can’t exceed 128
53
- * characters. For these and additional limits, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html#reference_iam-limits-entity-length">IAM
54
- * and STS Character Limits</a> in the <i>IAM User Guide</i>.</p>
55
- */
56
- Key: string | undefined;
57
- /**
58
- * <p>The value for a session tag.</p>
59
- * <p>You can pass up to 50 session tags. The plain text session tag values can’t exceed 256
60
- * characters. For these and additional limits, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html#reference_iam-limits-entity-length">IAM
61
- * and STS Character Limits</a> in the <i>IAM User Guide</i>.</p>
62
- */
63
- Value: string | undefined;
64
- }
65
- export declare namespace Tag {
66
- /**
67
- * @internal
68
- */
69
- const filterSensitiveLog: (obj: Tag) => any;
70
- }
71
- export interface AssumeRoleRequest {
72
- /**
73
- * <p>The Amazon Resource Name (ARN) of the role to assume.</p>
74
- */
75
- RoleArn: string | undefined;
76
- /**
77
- * <p>An identifier for the assumed role session.</p>
78
- * <p>Use the role session name to uniquely identify a session when the same role is assumed
79
- * by different principals or for different reasons. In cross-account scenarios, the role
80
- * session name is visible to, and can be logged by the account that owns the role. The role
81
- * session name is also used in the ARN of the assumed role principal. This means that
82
- * subsequent cross-account API requests that use the temporary security credentials will
83
- * expose the role session name to the external account in their CloudTrail logs.</p>
84
- * <p>The regex used to validate this parameter is a string of characters
85
- * consisting of upper- and lower-case alphanumeric characters with no spaces. You can
86
- * also include underscores or any of the following characters: =,.@-</p>
87
- */
88
- RoleSessionName: string | undefined;
89
- /**
90
- * <p>The Amazon Resource Names (ARNs) of the IAM managed policies that you want to use as
91
- * managed session policies. The policies must exist in the same account as the role.</p>
92
- * <p>This parameter is optional. You can provide up to 10 managed policy ARNs. However, the
93
- * plaintext that you use for both inline and managed session policies can't exceed 2,048
94
- * characters. For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services
95
- * Service Namespaces</a> in the Amazon Web Services General Reference.</p>
96
- * <note>
97
- * <p>An Amazon Web Services conversion compresses the passed session policies and session tags into a
98
- * packed binary format that has a separate limit. Your request can fail for this limit
99
- * even if your plaintext meets the other requirements. The <code>PackedPolicySize</code>
100
- * response element indicates by percentage how close the policies and tags for your
101
- * request are to the upper size limit.
102
- * </p>
103
- * </note>
104
- *
105
- * <p>Passing policies to this operation returns new
106
- * temporary credentials. The resulting session's permissions are the intersection of the
107
- * role's identity-based policy and the session policies. You can use the role's temporary
108
- * credentials in subsequent Amazon Web Services API calls to access resources in the account that owns
109
- * the role. You cannot use session policies to grant more permissions than those allowed
110
- * by the identity-based policy of the role that is being assumed. For more information, see
111
- * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session
112
- * Policies</a> in the <i>IAM User Guide</i>.</p>
113
- */
114
- PolicyArns?: PolicyDescriptorType[];
115
- /**
116
- * <p>An IAM policy in JSON format that you want to use as an inline session policy.</p>
117
- * <p>This parameter is optional. Passing policies to this operation returns new
118
- * temporary credentials. The resulting session's permissions are the intersection of the
119
- * role's identity-based policy and the session policies. You can use the role's temporary
120
- * credentials in subsequent Amazon Web Services API calls to access resources in the account that owns
121
- * the role. You cannot use session policies to grant more permissions than those allowed
122
- * by the identity-based policy of the role that is being assumed. For more information, see
123
- * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session
124
- * Policies</a> in the <i>IAM User Guide</i>.</p>
125
- * <p>The plaintext that you use for both inline and managed session policies can't exceed
126
- * 2,048 characters. The JSON policy characters can be any ASCII character from the space
127
- * character to the end of the valid character list (\u0020 through \u00FF). It can also
128
- * include the tab (\u0009), linefeed (\u000A), and carriage return (\u000D)
129
- * characters.</p>
130
- * <note>
131
- * <p>An Amazon Web Services conversion compresses the passed session policies and session tags into a
132
- * packed binary format that has a separate limit. Your request can fail for this limit
133
- * even if your plaintext meets the other requirements. The <code>PackedPolicySize</code>
134
- * response element indicates by percentage how close the policies and tags for your
135
- * request are to the upper size limit.
136
- * </p>
137
- * </note>
138
- */
139
- Policy?: string;
140
- /**
141
- * <p>The duration, in seconds, of the role session. The value specified can can range from
142
- * 900 seconds (15 minutes) up to the maximum session duration that is set for the role. The
143
- * maximum session duration setting can have a value from 1 hour to 12 hours. If you specify a
144
- * value higher than this setting or the administrator setting (whichever is lower), the
145
- * operation fails. For example, if you specify a session duration of 12 hours, but your
146
- * administrator set the maximum session duration to 6 hours, your operation fails. To learn
147
- * how to view the maximum value for your role, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session">View the
148
- * Maximum Session Duration Setting for a Role</a> in the
149
- * <i>IAM User Guide</i>.</p>
150
- * <p>By default, the value is set to <code>3600</code> seconds. </p>
151
- * <note>
152
- * <p>The <code>DurationSeconds</code> parameter is separate from the duration of a console
153
- * session that you might request using the returned credentials. The request to the
154
- * federation endpoint for a console sign-in token takes a <code>SessionDuration</code>
155
- * parameter that specifies the maximum length of the console session. For more
156
- * information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html">Creating a URL
157
- * that Enables Federated Users to Access the Management Console</a> in the
158
- * <i>IAM User Guide</i>.</p>
159
- * </note>
160
- */
161
- DurationSeconds?: number;
162
- /**
163
- * <p>A list of session tags that you want to pass. Each session tag consists of a key name
164
- * and an associated value. For more information about session tags, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html">Tagging STS
165
- * Sessions</a> in the <i>IAM User Guide</i>.</p>
166
- * <p>This parameter is optional. You can pass up to 50 session tags. The plaintext session
167
- * tag keys can’t exceed 128 characters, and the values can’t exceed 256 characters. For these
168
- * and additional limits, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html#reference_iam-limits-entity-length">IAM
169
- * and STS Character Limits</a> in the <i>IAM User Guide</i>.</p>
170
- *
171
- * <note>
172
- * <p>An Amazon Web Services conversion compresses the passed session policies and session tags into a
173
- * packed binary format that has a separate limit. Your request can fail for this limit
174
- * even if your plaintext meets the other requirements. The <code>PackedPolicySize</code>
175
- * response element indicates by percentage how close the policies and tags for your
176
- * request are to the upper size limit.
177
- * </p>
178
- * </note>
179
- * <p>You can pass a session tag with the same key as a tag that is already
180
- * attached to the role. When you do, session tags override a role tag with the same key. </p>
181
- * <p>Tag key–value pairs are not case sensitive, but case is preserved. This means that you
182
- * cannot have separate <code>Department</code> and <code>department</code> tag keys. Assume
183
- * that the role has the <code>Department</code>=<code>Marketing</code> tag and you pass the
184
- * <code>department</code>=<code>engineering</code> session tag. <code>Department</code>
185
- * and <code>department</code> are not saved as separate tags, and the session tag passed in
186
- * the request takes precedence over the role tag.</p>
187
- * <p>Additionally, if you used temporary credentials to perform this operation, the new
188
- * session inherits any transitive session tags from the calling session. If you pass a
189
- * session tag with the same key as an inherited tag, the operation fails. To view the
190
- * inherited tags for a session, see the CloudTrail logs. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/session-tags.html#id_session-tags_ctlogs">Viewing Session Tags in CloudTrail</a> in the
191
- * <i>IAM User Guide</i>.</p>
192
- */
193
- Tags?: Tag[];
194
- /**
195
- * <p>A list of keys for session tags that you want to set as transitive. If you set a tag key
196
- * as transitive, the corresponding key and value passes to subsequent sessions in a role
197
- * chain. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html#id_session-tags_role-chaining">Chaining Roles
198
- * with Session Tags</a> in the <i>IAM User Guide</i>.</p>
199
- * <p>This parameter is optional. When you set session tags as transitive, the session policy
200
- * and session tags packed binary limit is not affected.</p>
201
- * <p>If you choose not to specify a transitive tag key, then no tags are passed from this
202
- * session to any subsequent sessions.</p>
203
- */
204
- TransitiveTagKeys?: string[];
205
- /**
206
- * <p>A unique identifier that might be required when you assume a role in another account. If
207
- * the administrator of the account to which the role belongs provided you with an external
208
- * ID, then provide that value in the <code>ExternalId</code> parameter. This value can be any
209
- * string, such as a passphrase or account number. A cross-account role is usually set up to
210
- * trust everyone in an account. Therefore, the administrator of the trusting account might
211
- * send an external ID to the administrator of the trusted account. That way, only someone
212
- * with the ID can assume the role, rather than everyone in the account. For more information
213
- * about the external ID, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html">How to Use an External ID
214
- * When Granting Access to Your Amazon Web Services Resources to a Third Party</a> in the
215
- * <i>IAM User Guide</i>.</p>
216
- * <p>The regex used to validate this parameter is a string of
217
- * characters consisting of upper- and lower-case alphanumeric characters with no spaces.
218
- * You can also include underscores or any of the following characters: =,.@:/-</p>
219
- */
220
- ExternalId?: string;
221
- /**
222
- * <p>The identification number of the MFA device that is associated with the user who is
223
- * making the <code>AssumeRole</code> call. Specify this value if the trust policy of the role
224
- * being assumed includes a condition that requires MFA authentication. The value is either
225
- * the serial number for a hardware device (such as <code>GAHT12345678</code>) or an Amazon
226
- * Resource Name (ARN) for a virtual device (such as
227
- * <code>arn:aws:iam::123456789012:mfa/user</code>).</p>
228
- * <p>The regex used to validate this parameter is a string of characters
229
- * consisting of upper- and lower-case alphanumeric characters with no spaces. You can
230
- * also include underscores or any of the following characters: =,.@-</p>
231
- */
232
- SerialNumber?: string;
233
- /**
234
- * <p>The value provided by the MFA device, if the trust policy of the role being assumed
235
- * requires MFA. (In other words, if the policy includes a condition that tests for MFA). If
236
- * the role being assumed requires MFA and if the <code>TokenCode</code> value is missing or
237
- * expired, the <code>AssumeRole</code> call returns an "access denied" error.</p>
238
- * <p>The format for this parameter, as described by its regex pattern, is a sequence of six
239
- * numeric digits.</p>
240
- */
241
- TokenCode?: string;
242
- /**
243
- * <p>The source identity specified by the principal that is calling the
244
- * <code>AssumeRole</code> operation.</p>
245
- * <p>You can require users to specify a source identity when they assume a role. You do this
246
- * by using the <code>sts:SourceIdentity</code> condition key in a role trust policy. You can
247
- * use source identity information in CloudTrail logs to determine who took actions with a role.
248
- * You can use the <code>aws:SourceIdentity</code> condition key to further control access to
249
- * Amazon Web Services resources based on the value of source identity. For more information about using
250
- * source identity, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_monitor.html">Monitor and control
251
- * actions taken with assumed roles</a> in the
252
- * <i>IAM User Guide</i>.</p>
253
- * <p>The regex used to validate this parameter is a string of characters consisting of upper-
254
- * and lower-case alphanumeric characters with no spaces. You can also include underscores or
255
- * any of the following characters: =,.@-. You cannot use a value that begins with the text
256
- * <code>aws:</code>. This prefix is reserved for Amazon Web Services internal
257
- * use.</p>
258
- */
259
- SourceIdentity?: string;
260
- }
261
- export declare namespace AssumeRoleRequest {
262
- /**
263
- * @internal
264
- */
265
- const filterSensitiveLog: (obj: AssumeRoleRequest) => any;
266
- }
267
- /**
268
- * <p>Amazon Web Services credentials for API authentication.</p>
269
- */
270
- export interface Credentials {
271
- /**
272
- * <p>The access key ID that identifies the temporary security credentials.</p>
273
- */
274
- AccessKeyId: string | undefined;
275
- /**
276
- * <p>The secret access key that can be used to sign requests.</p>
277
- */
278
- SecretAccessKey: string | undefined;
279
- /**
280
- * <p>The token that users must pass to the service API to use the temporary
281
- * credentials.</p>
282
- */
283
- SessionToken: string | undefined;
284
- /**
285
- * <p>The date on which the current credentials expire.</p>
286
- */
287
- Expiration: Date | undefined;
288
- }
289
- export declare namespace Credentials {
290
- /**
291
- * @internal
292
- */
293
- const filterSensitiveLog: (obj: Credentials) => any;
294
- }
295
- /**
296
- * <p>Contains the response to a successful <a>AssumeRole</a> request, including
297
- * temporary Amazon Web Services credentials that can be used to make Amazon Web Services requests. </p>
298
- */
299
- export interface AssumeRoleResponse {
300
- /**
301
- * <p>The temporary security credentials, which include an access key ID, a secret access key,
302
- * and a security (or session) token.</p>
303
- * <note>
304
- * <p>The size of the security token that STS API operations return is not fixed. We
305
- * strongly recommend that you make no assumptions about the maximum size.</p>
306
- * </note>
307
- */
308
- Credentials?: Credentials;
309
- /**
310
- * <p>The Amazon Resource Name (ARN) and the assumed role ID, which are identifiers that you
311
- * can use to refer to the resulting temporary security credentials. For example, you can
312
- * reference these credentials as a principal in a resource-based policy by using the ARN or
313
- * assumed role ID. The ARN and ID include the <code>RoleSessionName</code> that you specified
314
- * when you called <code>AssumeRole</code>. </p>
315
- */
316
- AssumedRoleUser?: AssumedRoleUser;
317
- /**
318
- * <p>A percentage value that indicates the packed size of the session policies and session
319
- * tags combined passed in the request. The request fails if the packed size is greater than 100 percent,
320
- * which means the policies and tags exceeded the allowed space.</p>
321
- */
322
- PackedPolicySize?: number;
323
- /**
324
- * <p>The source identity specified by the principal that is calling the
325
- * <code>AssumeRole</code> operation.</p>
326
- * <p>You can require users to specify a source identity when they assume a role. You do this
327
- * by using the <code>sts:SourceIdentity</code> condition key in a role trust policy. You can
328
- * use source identity information in CloudTrail logs to determine who took actions with a role.
329
- * You can use the <code>aws:SourceIdentity</code> condition key to further control access to
330
- * Amazon Web Services resources based on the value of source identity. For more information about using
331
- * source identity, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_monitor.html">Monitor and control
332
- * actions taken with assumed roles</a> in the
333
- * <i>IAM User Guide</i>.</p>
334
- * <p>The regex used to validate this parameter is a string of characters consisting of upper-
335
- * and lower-case alphanumeric characters with no spaces. You can also include underscores or
336
- * any of the following characters: =,.@-</p>
337
- */
338
- SourceIdentity?: string;
339
- }
340
- export declare namespace AssumeRoleResponse {
341
- /**
342
- * @internal
343
- */
344
- const filterSensitiveLog: (obj: AssumeRoleResponse) => any;
345
- }
346
- /**
347
- * <p>The web identity token that was passed is expired or is not valid. Get a new identity
348
- * token from the identity provider and then retry the request.</p>
349
- */
350
- export interface ExpiredTokenException extends __SmithyException, $MetadataBearer {
351
- name: "ExpiredTokenException";
352
- $fault: "client";
353
- message?: string;
354
- }
355
- export declare namespace ExpiredTokenException {
356
- /**
357
- * @internal
358
- */
359
- const filterSensitiveLog: (obj: ExpiredTokenException) => any;
360
- }
361
- /**
362
- * <p>The request was rejected because the policy document was malformed. The error message
363
- * describes the specific error.</p>
364
- */
365
- export interface MalformedPolicyDocumentException extends __SmithyException, $MetadataBearer {
366
- name: "MalformedPolicyDocumentException";
367
- $fault: "client";
368
- message?: string;
369
- }
370
- export declare namespace MalformedPolicyDocumentException {
371
- /**
372
- * @internal
373
- */
374
- const filterSensitiveLog: (obj: MalformedPolicyDocumentException) => any;
375
- }
376
- /**
377
- * <p>The request was rejected because the total packed size of the session policies and
378
- * session tags combined was too large. An Amazon Web Services conversion compresses the session policy
379
- * document, session policy ARNs, and session tags into a packed binary format that has a
380
- * separate limit. The error message indicates by percentage how close the policies and
381
- * tags are to the upper size limit. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html">Passing Session Tags in STS</a> in
382
- * the <i>IAM User Guide</i>.</p>
383
- * <p>You could receive this error even though you meet other defined session policy and
384
- * session tag limits. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html">IAM and STS Entity
385
- * Character Limits</a> in the <i>IAM User Guide</i>.</p>
386
- */
387
- export interface PackedPolicyTooLargeException extends __SmithyException, $MetadataBearer {
388
- name: "PackedPolicyTooLargeException";
389
- $fault: "client";
390
- message?: string;
391
- }
392
- export declare namespace PackedPolicyTooLargeException {
393
- /**
394
- * @internal
395
- */
396
- const filterSensitiveLog: (obj: PackedPolicyTooLargeException) => any;
397
- }
398
- /**
399
- * <p>STS is not activated in the requested region for the account that is being asked to
400
- * generate credentials. The account administrator must use the IAM console to activate STS
401
- * in that region. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html">Activating and
402
- * Deactivating Amazon Web Services STS in an Amazon Web Services Region</a> in the <i>IAM User
403
- * Guide</i>.</p>
404
- */
405
- export interface RegionDisabledException extends __SmithyException, $MetadataBearer {
406
- name: "RegionDisabledException";
407
- $fault: "client";
408
- message?: string;
409
- }
410
- export declare namespace RegionDisabledException {
411
- /**
412
- * @internal
413
- */
414
- const filterSensitiveLog: (obj: RegionDisabledException) => any;
415
- }
416
- export interface AssumeRoleWithSAMLRequest {
417
- /**
418
- * <p>The Amazon Resource Name (ARN) of the role that the caller is assuming.</p>
419
- */
420
- RoleArn: string | undefined;
421
- /**
422
- * <p>The Amazon Resource Name (ARN) of the SAML provider in IAM that describes the
423
- * IdP.</p>
424
- */
425
- PrincipalArn: string | undefined;
426
- /**
427
- * <p>The base64 encoded SAML authentication response provided by the IdP.</p>
428
- * <p>For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/create-role-saml-IdP-tasks.html">Configuring a Relying Party and
429
- * Adding Claims</a> in the <i>IAM User Guide</i>. </p>
430
- */
431
- SAMLAssertion: string | undefined;
432
- /**
433
- * <p>The Amazon Resource Names (ARNs) of the IAM managed policies that you want to use as
434
- * managed session policies. The policies must exist in the same account as the role.</p>
435
- * <p>This parameter is optional. You can provide up to 10 managed policy ARNs. However, the
436
- * plaintext that you use for both inline and managed session policies can't exceed 2,048
437
- * characters. For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services
438
- * Service Namespaces</a> in the Amazon Web Services General Reference.</p>
439
- * <note>
440
- * <p>An Amazon Web Services conversion compresses the passed session policies and session tags into a
441
- * packed binary format that has a separate limit. Your request can fail for this limit
442
- * even if your plaintext meets the other requirements. The <code>PackedPolicySize</code>
443
- * response element indicates by percentage how close the policies and tags for your
444
- * request are to the upper size limit.
445
- * </p>
446
- * </note>
447
- *
448
- * <p>Passing policies to this operation returns new
449
- * temporary credentials. The resulting session's permissions are the intersection of the
450
- * role's identity-based policy and the session policies. You can use the role's temporary
451
- * credentials in subsequent Amazon Web Services API calls to access resources in the account that owns
452
- * the role. You cannot use session policies to grant more permissions than those allowed
453
- * by the identity-based policy of the role that is being assumed. For more information, see
454
- * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session
455
- * Policies</a> in the <i>IAM User Guide</i>.</p>
456
- */
457
- PolicyArns?: PolicyDescriptorType[];
458
- /**
459
- * <p>An IAM policy in JSON format that you want to use as an inline session policy.</p>
460
- * <p>This parameter is optional. Passing policies to this operation returns new
461
- * temporary credentials. The resulting session's permissions are the intersection of the
462
- * role's identity-based policy and the session policies. You can use the role's temporary
463
- * credentials in subsequent Amazon Web Services API calls to access resources in the account that owns
464
- * the role. You cannot use session policies to grant more permissions than those allowed
465
- * by the identity-based policy of the role that is being assumed. For more information, see
466
- * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session
467
- * Policies</a> in the <i>IAM User Guide</i>. </p>
468
- * <p>The plaintext that you use for both inline and managed session policies can't exceed
469
- * 2,048 characters. The JSON policy characters can be any ASCII character from the space
470
- * character to the end of the valid character list (\u0020 through \u00FF). It can also
471
- * include the tab (\u0009), linefeed (\u000A), and carriage return (\u000D)
472
- * characters.</p>
473
- * <note>
474
- * <p>An Amazon Web Services conversion compresses the passed session policies and session tags into a
475
- * packed binary format that has a separate limit. Your request can fail for this limit
476
- * even if your plaintext meets the other requirements. The <code>PackedPolicySize</code>
477
- * response element indicates by percentage how close the policies and tags for your
478
- * request are to the upper size limit.
479
- * </p>
480
- * </note>
481
- */
482
- Policy?: string;
483
- /**
484
- * <p>The duration, in seconds, of the role session. Your role session lasts for the duration
485
- * that you specify for the <code>DurationSeconds</code> parameter, or until the time
486
- * specified in the SAML authentication response's <code>SessionNotOnOrAfter</code> value,
487
- * whichever is shorter. You can provide a <code>DurationSeconds</code> value from 900 seconds
488
- * (15 minutes) up to the maximum session duration setting for the role. This setting can have
489
- * a value from 1 hour to 12 hours. If you specify a value higher than this setting, the
490
- * operation fails. For example, if you specify a session duration of 12 hours, but your
491
- * administrator set the maximum session duration to 6 hours, your operation fails. To learn
492
- * how to view the maximum value for your role, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session">View the
493
- * Maximum Session Duration Setting for a Role</a> in the
494
- * <i>IAM User Guide</i>.</p>
495
- * <p>By default, the value is set to <code>3600</code> seconds. </p>
496
- * <note>
497
- * <p>The <code>DurationSeconds</code> parameter is separate from the duration of a console
498
- * session that you might request using the returned credentials. The request to the
499
- * federation endpoint for a console sign-in token takes a <code>SessionDuration</code>
500
- * parameter that specifies the maximum length of the console session. For more
501
- * information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html">Creating a URL
502
- * that Enables Federated Users to Access the Management Console</a> in the
503
- * <i>IAM User Guide</i>.</p>
504
- * </note>
505
- */
506
- DurationSeconds?: number;
507
- }
508
- export declare namespace AssumeRoleWithSAMLRequest {
509
- /**
510
- * @internal
511
- */
512
- const filterSensitiveLog: (obj: AssumeRoleWithSAMLRequest) => any;
513
- }
514
- /**
515
- * <p>Contains the response to a successful <a>AssumeRoleWithSAML</a> request,
516
- * including temporary Amazon Web Services credentials that can be used to make Amazon Web Services requests. </p>
517
- */
518
- export interface AssumeRoleWithSAMLResponse {
519
- /**
520
- * <p>The temporary security credentials, which include an access key ID, a secret access key,
521
- * and a security (or session) token.</p>
522
- * <note>
523
- * <p>The size of the security token that STS API operations return is not fixed. We
524
- * strongly recommend that you make no assumptions about the maximum size.</p>
525
- * </note>
526
- */
527
- Credentials?: Credentials;
528
- /**
529
- * <p>The identifiers for the temporary security credentials that the operation
530
- * returns.</p>
531
- */
532
- AssumedRoleUser?: AssumedRoleUser;
533
- /**
534
- * <p>A percentage value that indicates the packed size of the session policies and session
535
- * tags combined passed in the request. The request fails if the packed size is greater than 100 percent,
536
- * which means the policies and tags exceeded the allowed space.</p>
537
- */
538
- PackedPolicySize?: number;
539
- /**
540
- * <p>The value of the <code>NameID</code> element in the <code>Subject</code> element of the
541
- * SAML assertion.</p>
542
- */
543
- Subject?: string;
544
- /**
545
- * <p> The format of the name ID, as defined by the <code>Format</code> attribute in the
546
- * <code>NameID</code> element of the SAML assertion. Typical examples of the format are
547
- * <code>transient</code> or <code>persistent</code>. </p>
548
- * <p> If the format includes the prefix
549
- * <code>urn:oasis:names:tc:SAML:2.0:nameid-format</code>, that prefix is removed. For
550
- * example, <code>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</code> is returned as
551
- * <code>transient</code>. If the format includes any other prefix, the format is returned
552
- * with no modifications.</p>
553
- */
554
- SubjectType?: string;
555
- /**
556
- * <p>The value of the <code>Issuer</code> element of the SAML assertion.</p>
557
- */
558
- Issuer?: string;
559
- /**
560
- * <p> The value of the <code>Recipient</code> attribute of the
561
- * <code>SubjectConfirmationData</code> element of the SAML assertion. </p>
562
- */
563
- Audience?: string;
564
- /**
565
- * <p>A hash value based on the concatenation of the following:</p>
566
- * <ul>
567
- * <li>
568
- * <p>The <code>Issuer</code> response value.</p>
569
- * </li>
570
- * <li>
571
- * <p>The Amazon Web Services account ID.</p>
572
- * </li>
573
- * <li>
574
- * <p>The friendly name (the last part of the ARN) of the SAML provider in IAM.</p>
575
- * </li>
576
- * </ul>
577
- * <p>The combination of <code>NameQualifier</code> and <code>Subject</code> can be used to
578
- * uniquely identify a federated user.</p>
579
- * <p>The following pseudocode shows how the hash value is calculated:</p>
580
- * <p>
581
- * <code>BASE64 ( SHA1 ( "https://example.com/saml" + "123456789012" + "/MySAMLIdP" ) )</code>
582
- * </p>
583
- */
584
- NameQualifier?: string;
585
- /**
586
- * <p>The value in the <code>SourceIdentity</code> attribute in the SAML assertion. </p>
587
- * <p>You can require users to set a source identity value when they assume a role. You do
588
- * this by using the <code>sts:SourceIdentity</code> condition key in a role trust policy.
589
- * That way, actions that are taken with the role are associated with that user. After the
590
- * source identity is set, the value cannot be changed. It is present in the request for all
591
- * actions that are taken by the role and persists across <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts#iam-term-role-chaining">chained
592
- * role</a> sessions. You can configure your SAML identity provider to use an attribute
593
- * associated with your users, like user name or email, as the source identity when calling
594
- * <code>AssumeRoleWithSAML</code>. You do this by adding an attribute to the SAML
595
- * assertion. For more information about using source identity, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_monitor.html">Monitor and control
596
- * actions taken with assumed roles</a> in the
597
- * <i>IAM User Guide</i>.</p>
598
- * <p>The regex used to validate this parameter is a string of characters
599
- * consisting of upper- and lower-case alphanumeric characters with no spaces. You can
600
- * also include underscores or any of the following characters: =,.@-</p>
601
- */
602
- SourceIdentity?: string;
603
- }
604
- export declare namespace AssumeRoleWithSAMLResponse {
605
- /**
606
- * @internal
607
- */
608
- const filterSensitiveLog: (obj: AssumeRoleWithSAMLResponse) => any;
609
- }
610
- /**
611
- * <p>The identity provider (IdP) reported that authentication failed. This might be because
612
- * the claim is invalid.</p>
613
- * <p>If this error is returned for the <code>AssumeRoleWithWebIdentity</code> operation, it
614
- * can also mean that the claim has expired or has been explicitly revoked. </p>
615
- */
616
- export interface IDPRejectedClaimException extends __SmithyException, $MetadataBearer {
617
- name: "IDPRejectedClaimException";
618
- $fault: "client";
619
- message?: string;
620
- }
621
- export declare namespace IDPRejectedClaimException {
622
- /**
623
- * @internal
624
- */
625
- const filterSensitiveLog: (obj: IDPRejectedClaimException) => any;
626
- }
627
- /**
628
- * <p>The web identity token that was passed could not be validated by Amazon Web Services. Get a new
629
- * identity token from the identity provider and then retry the request.</p>
630
- */
631
- export interface InvalidIdentityTokenException extends __SmithyException, $MetadataBearer {
632
- name: "InvalidIdentityTokenException";
633
- $fault: "client";
634
- message?: string;
635
- }
636
- export declare namespace InvalidIdentityTokenException {
637
- /**
638
- * @internal
639
- */
640
- const filterSensitiveLog: (obj: InvalidIdentityTokenException) => any;
641
- }
642
- export interface AssumeRoleWithWebIdentityRequest {
643
- /**
644
- * <p>The Amazon Resource Name (ARN) of the role that the caller is assuming.</p>
645
- */
646
- RoleArn: string | undefined;
647
- /**
648
- * <p>An identifier for the assumed role session. Typically, you pass the name or identifier
649
- * that is associated with the user who is using your application. That way, the temporary
650
- * security credentials that your application will use are associated with that user. This
651
- * session name is included as part of the ARN and assumed role ID in the
652
- * <code>AssumedRoleUser</code> response element.</p>
653
- * <p>The regex used to validate this parameter is a string of characters
654
- * consisting of upper- and lower-case alphanumeric characters with no spaces. You can
655
- * also include underscores or any of the following characters: =,.@-</p>
656
- */
657
- RoleSessionName: string | undefined;
658
- /**
659
- * <p>The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity
660
- * provider. Your application must get this token by authenticating the user who is using your
661
- * application with a web identity provider before the application makes an
662
- * <code>AssumeRoleWithWebIdentity</code> call. </p>
663
- */
664
- WebIdentityToken: string | undefined;
665
- /**
666
- * <p>The fully qualified host component of the domain name of the identity provider.</p>
667
- * <p>Specify this value only for OAuth 2.0 access tokens. Currently
668
- * <code>www.amazon.com</code> and <code>graph.facebook.com</code> are the only supported
669
- * identity providers for OAuth 2.0 access tokens. Do not include URL schemes and port
670
- * numbers.</p>
671
- * <p>Do not specify this value for OpenID Connect ID tokens.</p>
672
- */
673
- ProviderId?: string;
674
- /**
675
- * <p>The Amazon Resource Names (ARNs) of the IAM managed policies that you want to use as
676
- * managed session policies. The policies must exist in the same account as the role.</p>
677
- * <p>This parameter is optional. You can provide up to 10 managed policy ARNs. However, the
678
- * plaintext that you use for both inline and managed session policies can't exceed 2,048
679
- * characters. For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services
680
- * Service Namespaces</a> in the Amazon Web Services General Reference.</p>
681
- * <note>
682
- * <p>An Amazon Web Services conversion compresses the passed session policies and session tags into a
683
- * packed binary format that has a separate limit. Your request can fail for this limit
684
- * even if your plaintext meets the other requirements. The <code>PackedPolicySize</code>
685
- * response element indicates by percentage how close the policies and tags for your
686
- * request are to the upper size limit.
687
- * </p>
688
- * </note>
689
- *
690
- * <p>Passing policies to this operation returns new
691
- * temporary credentials. The resulting session's permissions are the intersection of the
692
- * role's identity-based policy and the session policies. You can use the role's temporary
693
- * credentials in subsequent Amazon Web Services API calls to access resources in the account that owns
694
- * the role. You cannot use session policies to grant more permissions than those allowed
695
- * by the identity-based policy of the role that is being assumed. For more information, see
696
- * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session
697
- * Policies</a> in the <i>IAM User Guide</i>.</p>
698
- */
699
- PolicyArns?: PolicyDescriptorType[];
700
- /**
701
- * <p>An IAM policy in JSON format that you want to use as an inline session policy.</p>
702
- * <p>This parameter is optional. Passing policies to this operation returns new
703
- * temporary credentials. The resulting session's permissions are the intersection of the
704
- * role's identity-based policy and the session policies. You can use the role's temporary
705
- * credentials in subsequent Amazon Web Services API calls to access resources in the account that owns
706
- * the role. You cannot use session policies to grant more permissions than those allowed
707
- * by the identity-based policy of the role that is being assumed. For more information, see
708
- * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session
709
- * Policies</a> in the <i>IAM User Guide</i>.</p>
710
- * <p>The plaintext that you use for both inline and managed session policies can't exceed
711
- * 2,048 characters. The JSON policy characters can be any ASCII character from the space
712
- * character to the end of the valid character list (\u0020 through \u00FF). It can also
713
- * include the tab (\u0009), linefeed (\u000A), and carriage return (\u000D)
714
- * characters.</p>
715
- * <note>
716
- * <p>An Amazon Web Services conversion compresses the passed session policies and session tags into a
717
- * packed binary format that has a separate limit. Your request can fail for this limit
718
- * even if your plaintext meets the other requirements. The <code>PackedPolicySize</code>
719
- * response element indicates by percentage how close the policies and tags for your
720
- * request are to the upper size limit.
721
- * </p>
722
- * </note>
723
- */
724
- Policy?: string;
725
- /**
726
- * <p>The duration, in seconds, of the role session. The value can range from 900 seconds (15
727
- * minutes) up to the maximum session duration setting for the role. This setting can have a
728
- * value from 1 hour to 12 hours. If you specify a value higher than this setting, the
729
- * operation fails. For example, if you specify a session duration of 12 hours, but your
730
- * administrator set the maximum session duration to 6 hours, your operation fails. To learn
731
- * how to view the maximum value for your role, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session">View the
732
- * Maximum Session Duration Setting for a Role</a> in the
733
- * <i>IAM User Guide</i>.</p>
734
- * <p>By default, the value is set to <code>3600</code> seconds. </p>
735
- * <note>
736
- * <p>The <code>DurationSeconds</code> parameter is separate from the duration of a console
737
- * session that you might request using the returned credentials. The request to the
738
- * federation endpoint for a console sign-in token takes a <code>SessionDuration</code>
739
- * parameter that specifies the maximum length of the console session. For more
740
- * information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html">Creating a URL
741
- * that Enables Federated Users to Access the Management Console</a> in the
742
- * <i>IAM User Guide</i>.</p>
743
- * </note>
744
- */
745
- DurationSeconds?: number;
746
- }
747
- export declare namespace AssumeRoleWithWebIdentityRequest {
748
- /**
749
- * @internal
750
- */
751
- const filterSensitiveLog: (obj: AssumeRoleWithWebIdentityRequest) => any;
752
- }
753
- /**
754
- * <p>Contains the response to a successful <a>AssumeRoleWithWebIdentity</a>
755
- * request, including temporary Amazon Web Services credentials that can be used to make Amazon Web Services requests. </p>
756
- */
757
- export interface AssumeRoleWithWebIdentityResponse {
758
- /**
759
- * <p>The temporary security credentials, which include an access key ID, a secret access key,
760
- * and a security token.</p>
761
- * <note>
762
- * <p>The size of the security token that STS API operations return is not fixed. We
763
- * strongly recommend that you make no assumptions about the maximum size.</p>
764
- * </note>
765
- */
766
- Credentials?: Credentials;
767
- /**
768
- * <p>The unique user identifier that is returned by the identity provider. This identifier is
769
- * associated with the <code>WebIdentityToken</code> that was submitted with the
770
- * <code>AssumeRoleWithWebIdentity</code> call. The identifier is typically unique to the
771
- * user and the application that acquired the <code>WebIdentityToken</code> (pairwise
772
- * identifier). For OpenID Connect ID tokens, this field contains the value returned by the
773
- * identity provider as the token's <code>sub</code> (Subject) claim. </p>
774
- */
775
- SubjectFromWebIdentityToken?: string;
776
- /**
777
- * <p>The Amazon Resource Name (ARN) and the assumed role ID, which are identifiers that you
778
- * can use to refer to the resulting temporary security credentials. For example, you can
779
- * reference these credentials as a principal in a resource-based policy by using the ARN or
780
- * assumed role ID. The ARN and ID include the <code>RoleSessionName</code> that you specified
781
- * when you called <code>AssumeRole</code>. </p>
782
- */
783
- AssumedRoleUser?: AssumedRoleUser;
784
- /**
785
- * <p>A percentage value that indicates the packed size of the session policies and session
786
- * tags combined passed in the request. The request fails if the packed size is greater than 100 percent,
787
- * which means the policies and tags exceeded the allowed space.</p>
788
- */
789
- PackedPolicySize?: number;
790
- /**
791
- * <p> The issuing authority of the web identity token presented. For OpenID Connect ID
792
- * tokens, this contains the value of the <code>iss</code> field. For OAuth 2.0 access tokens,
793
- * this contains the value of the <code>ProviderId</code> parameter that was passed in the
794
- * <code>AssumeRoleWithWebIdentity</code> request.</p>
795
- */
796
- Provider?: string;
797
- /**
798
- * <p>The intended audience (also known as client ID) of the web identity token. This is
799
- * traditionally the client identifier issued to the application that requested the web
800
- * identity token.</p>
801
- */
802
- Audience?: string;
803
- /**
804
- * <p>The value of the source identity that is returned in the JSON web token (JWT) from the
805
- * identity provider.</p>
806
- * <p>You can require users to set a source identity value when they assume a role. You do
807
- * this by using the <code>sts:SourceIdentity</code> condition key in a role trust policy.
808
- * That way, actions that are taken with the role are associated with that user. After the
809
- * source identity is set, the value cannot be changed. It is present in the request for all
810
- * actions that are taken by the role and persists across <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts#iam-term-role-chaining">chained
811
- * role</a> sessions. You can configure your identity provider to use an attribute
812
- * associated with your users, like user name or email, as the source identity when calling
813
- * <code>AssumeRoleWithWebIdentity</code>. You do this by adding a claim to the JSON web
814
- * token. To learn more about OIDC tokens and claims, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-using-tokens-with-identity-providers.html">Using Tokens with User Pools</a> in the <i>Amazon Cognito Developer Guide</i>.
815
- * For more information about using source identity, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_monitor.html">Monitor and control
816
- * actions taken with assumed roles</a> in the
817
- * <i>IAM User Guide</i>.</p>
818
- * <p>The regex used to validate this parameter is a string of characters
819
- * consisting of upper- and lower-case alphanumeric characters with no spaces. You can
820
- * also include underscores or any of the following characters: =,.@-</p>
821
- */
822
- SourceIdentity?: string;
823
- }
824
- export declare namespace AssumeRoleWithWebIdentityResponse {
825
- /**
826
- * @internal
827
- */
828
- const filterSensitiveLog: (obj: AssumeRoleWithWebIdentityResponse) => any;
829
- }
830
- /**
831
- * <p>The request could not be fulfilled because the identity provider (IDP) that
832
- * was asked to verify the incoming identity token could not be reached. This is often a
833
- * transient error caused by network conditions. Retry the request a limited number of
834
- * times so that you don't exceed the request rate. If the error persists, the
835
- * identity provider might be down or not responding.</p>
836
- */
837
- export interface IDPCommunicationErrorException extends __SmithyException, $MetadataBearer {
838
- name: "IDPCommunicationErrorException";
839
- $fault: "client";
840
- message?: string;
841
- }
842
- export declare namespace IDPCommunicationErrorException {
843
- /**
844
- * @internal
845
- */
846
- const filterSensitiveLog: (obj: IDPCommunicationErrorException) => any;
847
- }
848
- export interface DecodeAuthorizationMessageRequest {
849
- /**
850
- * <p>The encoded message that was returned with the response.</p>
851
- */
852
- EncodedMessage: string | undefined;
853
- }
854
- export declare namespace DecodeAuthorizationMessageRequest {
855
- /**
856
- * @internal
857
- */
858
- const filterSensitiveLog: (obj: DecodeAuthorizationMessageRequest) => any;
859
- }
860
- /**
861
- * <p>A document that contains additional information about the authorization status of a
862
- * request from an encoded message that is returned in response to an Amazon Web Services request.</p>
863
- */
864
- export interface DecodeAuthorizationMessageResponse {
865
- /**
866
- * <p>An XML document that contains the decoded message.</p>
867
- */
868
- DecodedMessage?: string;
869
- }
870
- export declare namespace DecodeAuthorizationMessageResponse {
871
- /**
872
- * @internal
873
- */
874
- const filterSensitiveLog: (obj: DecodeAuthorizationMessageResponse) => any;
875
- }
876
- /**
877
- * <p>The error returned if the message passed to <code>DecodeAuthorizationMessage</code>
878
- * was invalid. This can happen if the token contains invalid characters, such as
879
- * linebreaks. </p>
880
- */
881
- export interface InvalidAuthorizationMessageException extends __SmithyException, $MetadataBearer {
882
- name: "InvalidAuthorizationMessageException";
883
- $fault: "client";
884
- message?: string;
885
- }
886
- export declare namespace InvalidAuthorizationMessageException {
887
- /**
888
- * @internal
889
- */
890
- const filterSensitiveLog: (obj: InvalidAuthorizationMessageException) => any;
891
- }
892
- export interface GetAccessKeyInfoRequest {
893
- /**
894
- * <p>The identifier of an access key.</p>
895
- * <p>This parameter allows (through its regex pattern) a string of characters that can
896
- * consist of any upper- or lowercase letter or digit.</p>
897
- */
898
- AccessKeyId: string | undefined;
899
- }
900
- export declare namespace GetAccessKeyInfoRequest {
901
- /**
902
- * @internal
903
- */
904
- const filterSensitiveLog: (obj: GetAccessKeyInfoRequest) => any;
905
- }
906
- export interface GetAccessKeyInfoResponse {
907
- /**
908
- * <p>The number used to identify the Amazon Web Services account.</p>
909
- */
910
- Account?: string;
911
- }
912
- export declare namespace GetAccessKeyInfoResponse {
913
- /**
914
- * @internal
915
- */
916
- const filterSensitiveLog: (obj: GetAccessKeyInfoResponse) => any;
917
- }
918
- export interface GetCallerIdentityRequest {
919
- }
920
- export declare namespace GetCallerIdentityRequest {
921
- /**
922
- * @internal
923
- */
924
- const filterSensitiveLog: (obj: GetCallerIdentityRequest) => any;
925
- }
926
- /**
927
- * <p>Contains the response to a successful <a>GetCallerIdentity</a> request,
928
- * including information about the entity making the request.</p>
929
- */
930
- export interface GetCallerIdentityResponse {
931
- /**
932
- * <p>The unique identifier of the calling entity. The exact value depends on the type of
933
- * entity that is making the call. The values returned are those listed in the <b>aws:userid</b> column in the <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html#principaltable">Principal
934
- * table</a> found on the <b>Policy Variables</b> reference
935
- * page in the <i>IAM User Guide</i>.</p>
936
- */
937
- UserId?: string;
938
- /**
939
- * <p>The Amazon Web Services account ID number of the account that owns or contains the calling
940
- * entity.</p>
941
- */
942
- Account?: string;
943
- /**
944
- * <p>The Amazon Web Services ARN associated with the calling entity.</p>
945
- */
946
- Arn?: string;
947
- }
948
- export declare namespace GetCallerIdentityResponse {
949
- /**
950
- * @internal
951
- */
952
- const filterSensitiveLog: (obj: GetCallerIdentityResponse) => any;
953
- }
954
- export interface GetFederationTokenRequest {
955
- /**
956
- * <p>The name of the federated user. The name is used as an identifier for the temporary
957
- * security credentials (such as <code>Bob</code>). For example, you can reference the
958
- * federated user name in a resource-based policy, such as in an Amazon S3 bucket policy.</p>
959
- * <p>The regex used to validate this parameter is a string of characters
960
- * consisting of upper- and lower-case alphanumeric characters with no spaces. You can
961
- * also include underscores or any of the following characters: =,.@-</p>
962
- */
963
- Name: string | undefined;
964
- /**
965
- * <p>An IAM policy in JSON format that you want to use as an inline session policy.</p>
966
- * <p>You must pass an inline or managed <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">session policy</a> to
967
- * this operation. You can pass a single JSON policy document to use as an inline session
968
- * policy. You can also specify up to 10 managed policies to use as managed session
969
- * policies.</p>
970
- * <p>This parameter is optional. However, if you do not pass any session policies, then the
971
- * resulting federated user session has no permissions.</p>
972
- * <p>When you pass session policies, the session permissions are the intersection of the
973
- * IAM user policies and the session policies that you pass. This gives you a way to further
974
- * restrict the permissions for a federated user. You cannot use session policies to grant
975
- * more permissions than those that are defined in the permissions policy of the IAM user.
976
- * For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session Policies</a> in
977
- * the <i>IAM User Guide</i>.</p>
978
- * <p>The resulting credentials can be used to access a resource that has a resource-based
979
- * policy. If that policy specifically references the federated user session in the
980
- * <code>Principal</code> element of the policy, the session has the permissions allowed by
981
- * the policy. These permissions are granted in addition to the permissions that are granted
982
- * by the session policies.</p>
983
- * <p>The plaintext that you use for both inline and managed session policies can't exceed
984
- * 2,048 characters. The JSON policy characters can be any ASCII character from the space
985
- * character to the end of the valid character list (\u0020 through \u00FF). It can also
986
- * include the tab (\u0009), linefeed (\u000A), and carriage return (\u000D)
987
- * characters.</p>
988
- * <note>
989
- * <p>An Amazon Web Services conversion compresses the passed session policies and session tags into a
990
- * packed binary format that has a separate limit. Your request can fail for this limit
991
- * even if your plaintext meets the other requirements. The <code>PackedPolicySize</code>
992
- * response element indicates by percentage how close the policies and tags for your
993
- * request are to the upper size limit.
994
- * </p>
995
- * </note>
996
- */
997
- Policy?: string;
998
- /**
999
- * <p>The Amazon Resource Names (ARNs) of the IAM managed policies that you want to use as a
1000
- * managed session policy. The policies must exist in the same account as the IAM user that
1001
- * is requesting federated access.</p>
1002
- * <p>You must pass an inline or managed <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">session policy</a> to
1003
- * this operation. You can pass a single JSON policy document to use as an inline session
1004
- * policy. You can also specify up to 10 managed policies to use as managed session policies.
1005
- * The plaintext that you use for both inline and managed session policies can't exceed 2,048
1006
- * characters. You can provide up to 10 managed policy ARNs. For more information about ARNs,
1007
- * see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon
1008
- * Resource Names (ARNs) and Amazon Web Services Service Namespaces</a> in the Amazon Web Services General Reference.</p>
1009
- * <p>This parameter is optional. However, if you do not pass any session policies, then the
1010
- * resulting federated user session has no permissions.</p>
1011
- * <p>When you pass session policies, the session permissions are the intersection of the
1012
- * IAM user policies and the session policies that you pass. This gives you a way to further
1013
- * restrict the permissions for a federated user. You cannot use session policies to grant
1014
- * more permissions than those that are defined in the permissions policy of the IAM user.
1015
- * For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session Policies</a> in
1016
- * the <i>IAM User Guide</i>.</p>
1017
- * <p>The resulting credentials can be used to access a resource that has a resource-based
1018
- * policy. If that policy specifically references the federated user session in the
1019
- * <code>Principal</code> element of the policy, the session has the permissions allowed by
1020
- * the policy. These permissions are granted in addition to the permissions that are granted
1021
- * by the session policies.</p>
1022
- * <note>
1023
- * <p>An Amazon Web Services conversion compresses the passed session policies and session tags into a
1024
- * packed binary format that has a separate limit. Your request can fail for this limit
1025
- * even if your plaintext meets the other requirements. The <code>PackedPolicySize</code>
1026
- * response element indicates by percentage how close the policies and tags for your
1027
- * request are to the upper size limit.
1028
- * </p>
1029
- * </note>
1030
- */
1031
- PolicyArns?: PolicyDescriptorType[];
1032
- /**
1033
- * <p>The duration, in seconds, that the session should last. Acceptable durations for
1034
- * federation sessions range from 900 seconds (15 minutes) to 129,600 seconds (36 hours), with
1035
- * 43,200 seconds (12 hours) as the default. Sessions obtained using Amazon Web Services account root user
1036
- * credentials are restricted to a maximum of 3,600 seconds (one hour). If the specified
1037
- * duration is longer than one hour, the session obtained by using root user credentials
1038
- * defaults to one hour.</p>
1039
- */
1040
- DurationSeconds?: number;
1041
- /**
1042
- * <p>A list of session tags. Each session tag consists of a key name and an associated value.
1043
- * For more information about session tags, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html">Passing Session Tags in STS</a> in the
1044
- * <i>IAM User Guide</i>.</p>
1045
- * <p>This parameter is optional. You can pass up to 50 session tags. The plaintext session
1046
- * tag keys can’t exceed 128 characters and the values can’t exceed 256 characters. For these
1047
- * and additional limits, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html#reference_iam-limits-entity-length">IAM
1048
- * and STS Character Limits</a> in the <i>IAM User Guide</i>.</p>
1049
- *
1050
- * <note>
1051
- * <p>An Amazon Web Services conversion compresses the passed session policies and session tags into a
1052
- * packed binary format that has a separate limit. Your request can fail for this limit
1053
- * even if your plaintext meets the other requirements. The <code>PackedPolicySize</code>
1054
- * response element indicates by percentage how close the policies and tags for your
1055
- * request are to the upper size limit.
1056
- * </p>
1057
- * </note>
1058
- * <p>You can pass a session tag with the same key as a tag that is already
1059
- * attached to the user you are federating. When you do, session tags override a user tag with
1060
- * the same key. </p>
1061
- * <p>Tag key–value pairs are not case sensitive, but case is preserved. This means that you
1062
- * cannot have separate <code>Department</code> and <code>department</code> tag keys. Assume
1063
- * that the role has the <code>Department</code>=<code>Marketing</code> tag and you pass the
1064
- * <code>department</code>=<code>engineering</code> session tag. <code>Department</code>
1065
- * and <code>department</code> are not saved as separate tags, and the session tag passed in
1066
- * the request takes precedence over the role tag.</p>
1067
- */
1068
- Tags?: Tag[];
1069
- }
1070
- export declare namespace GetFederationTokenRequest {
1071
- /**
1072
- * @internal
1073
- */
1074
- const filterSensitiveLog: (obj: GetFederationTokenRequest) => any;
1075
- }
1076
- /**
1077
- * <p>Identifiers for the federated user that is associated with the credentials.</p>
1078
- */
1079
- export interface FederatedUser {
1080
- /**
1081
- * <p>The string that identifies the federated user associated with the credentials, similar
1082
- * to the unique ID of an IAM user.</p>
1083
- */
1084
- FederatedUserId: string | undefined;
1085
- /**
1086
- * <p>The ARN that specifies the federated user that is associated with the credentials. For
1087
- * more information about ARNs and how to use them in policies, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html">IAM
1088
- * Identifiers</a> in the <i>IAM User Guide</i>. </p>
1089
- */
1090
- Arn: string | undefined;
1091
- }
1092
- export declare namespace FederatedUser {
1093
- /**
1094
- * @internal
1095
- */
1096
- const filterSensitiveLog: (obj: FederatedUser) => any;
1097
- }
1098
- /**
1099
- * <p>Contains the response to a successful <a>GetFederationToken</a> request,
1100
- * including temporary Amazon Web Services credentials that can be used to make Amazon Web Services requests. </p>
1101
- */
1102
- export interface GetFederationTokenResponse {
1103
- /**
1104
- * <p>The temporary security credentials, which include an access key ID, a secret access key,
1105
- * and a security (or session) token.</p>
1106
- * <note>
1107
- * <p>The size of the security token that STS API operations return is not fixed. We
1108
- * strongly recommend that you make no assumptions about the maximum size.</p>
1109
- * </note>
1110
- */
1111
- Credentials?: Credentials;
1112
- /**
1113
- * <p>Identifiers for the federated user associated with the credentials (such as
1114
- * <code>arn:aws:sts::123456789012:federated-user/Bob</code> or
1115
- * <code>123456789012:Bob</code>). You can use the federated user's ARN in your
1116
- * resource-based policies, such as an Amazon S3 bucket policy. </p>
1117
- */
1118
- FederatedUser?: FederatedUser;
1119
- /**
1120
- * <p>A percentage value that indicates the packed size of the session policies and session
1121
- * tags combined passed in the request. The request fails if the packed size is greater than 100 percent,
1122
- * which means the policies and tags exceeded the allowed space.</p>
1123
- */
1124
- PackedPolicySize?: number;
1125
- }
1126
- export declare namespace GetFederationTokenResponse {
1127
- /**
1128
- * @internal
1129
- */
1130
- const filterSensitiveLog: (obj: GetFederationTokenResponse) => any;
1131
- }
1132
- export interface GetSessionTokenRequest {
1133
- /**
1134
- * <p>The duration, in seconds, that the credentials should remain valid. Acceptable
1135
- * durations for IAM user sessions range from 900 seconds (15 minutes) to 129,600 seconds
1136
- * (36 hours), with 43,200 seconds (12 hours) as the default. Sessions for Amazon Web Services account
1137
- * owners are restricted to a maximum of 3,600 seconds (one hour). If the duration is
1138
- * longer than one hour, the session for Amazon Web Services account owners defaults to one hour.</p>
1139
- */
1140
- DurationSeconds?: number;
1141
- /**
1142
- * <p>The identification number of the MFA device that is associated with the IAM user who
1143
- * is making the <code>GetSessionToken</code> call. Specify this value if the IAM user
1144
- * has a policy that requires MFA authentication. The value is either the serial number for
1145
- * a hardware device (such as <code>GAHT12345678</code>) or an Amazon Resource Name (ARN)
1146
- * for a virtual device (such as <code>arn:aws:iam::123456789012:mfa/user</code>). You can
1147
- * find the device for an IAM user by going to the Management Console and viewing the user's
1148
- * security credentials. </p>
1149
- * <p>The regex used to validate this parameter is a string of
1150
- * characters consisting of upper- and lower-case alphanumeric characters with no spaces.
1151
- * You can also include underscores or any of the following characters: =,.@:/-</p>
1152
- */
1153
- SerialNumber?: string;
1154
- /**
1155
- * <p>The value provided by the MFA device, if MFA is required. If any policy requires the
1156
- * IAM user to submit an MFA code, specify this value. If MFA authentication is required,
1157
- * the user must provide a code when requesting a set of temporary security credentials. A
1158
- * user who fails to provide the code receives an "access denied" response when requesting
1159
- * resources that require MFA authentication.</p>
1160
- * <p>The format for this parameter, as described by its regex pattern, is a sequence of six
1161
- * numeric digits.</p>
1162
- */
1163
- TokenCode?: string;
1164
- }
1165
- export declare namespace GetSessionTokenRequest {
1166
- /**
1167
- * @internal
1168
- */
1169
- const filterSensitiveLog: (obj: GetSessionTokenRequest) => any;
1170
- }
1171
- /**
1172
- * <p>Contains the response to a successful <a>GetSessionToken</a> request,
1173
- * including temporary Amazon Web Services credentials that can be used to make Amazon Web Services requests. </p>
1174
- */
1175
- export interface GetSessionTokenResponse {
1176
- /**
1177
- * <p>The temporary security credentials, which include an access key ID, a secret access
1178
- * key, and a security (or session) token.</p>
1179
- *
1180
- * <note>
1181
- * <p>The size of the security token that STS API operations return is not fixed. We
1182
- * strongly recommend that you make no assumptions about the maximum size.</p>
1183
- * </note>
1184
- */
1185
- Credentials?: Credentials;
1186
- }
1187
- export declare namespace GetSessionTokenResponse {
1188
- /**
1189
- * @internal
1190
- */
1191
- const filterSensitiveLog: (obj: GetSessionTokenResponse) => any;
1192
- }