@aws-sdk/client-iam 3.933.0 → 3.935.0

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 (116) hide show
  1. package/README.md +88 -0
  2. package/dist-cjs/index.js +623 -216
  3. package/dist-es/IAM.js +22 -0
  4. package/dist-es/commands/AcceptDelegationRequestCommand.js +16 -0
  5. package/dist-es/commands/AssociateDelegationRequestCommand.js +16 -0
  6. package/dist-es/commands/DisableOutboundWebIdentityFederationCommand.js +16 -0
  7. package/dist-es/commands/EnableOutboundWebIdentityFederationCommand.js +16 -0
  8. package/dist-es/commands/GetDelegationRequestCommand.js +16 -0
  9. package/dist-es/commands/GetHumanReadableSummaryCommand.js +16 -0
  10. package/dist-es/commands/GetOutboundWebIdentityFederationInfoCommand.js +16 -0
  11. package/dist-es/commands/ListDelegationRequestsCommand.js +16 -0
  12. package/dist-es/commands/RejectDelegationRequestCommand.js +16 -0
  13. package/dist-es/commands/SendDelegationTokenCommand.js +16 -0
  14. package/dist-es/commands/UpdateDelegationRequestCommand.js +16 -0
  15. package/dist-es/commands/index.js +11 -0
  16. package/dist-es/index.js +2 -1
  17. package/dist-es/models/enums.js +176 -0
  18. package/dist-es/models/errors.js +431 -0
  19. package/dist-es/models/models_0.js +1 -446
  20. package/dist-es/models/models_1.js +1 -113
  21. package/dist-es/schemas/schemas_0.js +234 -35
  22. package/dist-types/IAM.d.ts +81 -0
  23. package/dist-types/IAMClient.d.ts +13 -2
  24. package/dist-types/commands/AcceptDelegationRequestCommand.d.ts +92 -0
  25. package/dist-types/commands/AssociateDelegationRequestCommand.d.ts +108 -0
  26. package/dist-types/commands/CreateDelegationRequestCommand.d.ts +5 -1
  27. package/dist-types/commands/DisableOutboundWebIdentityFederationCommand.d.ts +74 -0
  28. package/dist-types/commands/EnableOutboundWebIdentityFederationCommand.d.ts +78 -0
  29. package/dist-types/commands/GenerateOrganizationsAccessReportCommand.d.ts +2 -2
  30. package/dist-types/commands/GenerateServiceLastAccessedDetailsCommand.d.ts +2 -2
  31. package/dist-types/commands/GetDelegationRequestCommand.d.ts +127 -0
  32. package/dist-types/commands/GetHumanReadableSummaryCommand.d.ts +105 -0
  33. package/dist-types/commands/GetOutboundWebIdentityFederationInfoCommand.d.ts +77 -0
  34. package/dist-types/commands/ListDelegationRequestsCommand.d.ts +132 -0
  35. package/dist-types/commands/RejectDelegationRequestCommand.d.ts +96 -0
  36. package/dist-types/commands/SendDelegationTokenCommand.d.ts +98 -0
  37. package/dist-types/commands/SetSecurityTokenServicePreferencesCommand.d.ts +1 -1
  38. package/dist-types/commands/SimulateCustomPolicyCommand.d.ts +1 -1
  39. package/dist-types/commands/SimulatePrincipalPolicyCommand.d.ts +1 -1
  40. package/dist-types/commands/TagInstanceProfileCommand.d.ts +1 -1
  41. package/dist-types/commands/TagMFADeviceCommand.d.ts +1 -1
  42. package/dist-types/commands/TagOpenIDConnectProviderCommand.d.ts +1 -1
  43. package/dist-types/commands/TagPolicyCommand.d.ts +1 -1
  44. package/dist-types/commands/TagRoleCommand.d.ts +1 -1
  45. package/dist-types/commands/TagSAMLProviderCommand.d.ts +1 -1
  46. package/dist-types/commands/TagServerCertificateCommand.d.ts +1 -1
  47. package/dist-types/commands/TagUserCommand.d.ts +1 -1
  48. package/dist-types/commands/UntagInstanceProfileCommand.d.ts +1 -1
  49. package/dist-types/commands/UntagMFADeviceCommand.d.ts +1 -1
  50. package/dist-types/commands/UntagOpenIDConnectProviderCommand.d.ts +1 -1
  51. package/dist-types/commands/UntagPolicyCommand.d.ts +1 -1
  52. package/dist-types/commands/UntagRoleCommand.d.ts +1 -1
  53. package/dist-types/commands/UntagSAMLProviderCommand.d.ts +1 -1
  54. package/dist-types/commands/UntagServerCertificateCommand.d.ts +1 -1
  55. package/dist-types/commands/UntagUserCommand.d.ts +1 -1
  56. package/dist-types/commands/UpdateAccessKeyCommand.d.ts +1 -1
  57. package/dist-types/commands/UpdateAccountPasswordPolicyCommand.d.ts +1 -1
  58. package/dist-types/commands/UpdateAssumeRolePolicyCommand.d.ts +1 -1
  59. package/dist-types/commands/UpdateDelegationRequestCommand.d.ts +96 -0
  60. package/dist-types/commands/UpdateGroupCommand.d.ts +1 -1
  61. package/dist-types/commands/UpdateLoginProfileCommand.d.ts +1 -1
  62. package/dist-types/commands/index.d.ts +11 -0
  63. package/dist-types/index.d.ts +4 -1
  64. package/dist-types/models/enums.d.ts +392 -0
  65. package/dist-types/models/errors.d.ts +463 -0
  66. package/dist-types/models/models_0.d.ts +1695 -675
  67. package/dist-types/models/models_1.d.ts +2 -1392
  68. package/dist-types/schemas/schemas_0.d.ts +29 -0
  69. package/dist-types/ts3.4/IAM.d.ts +209 -0
  70. package/dist-types/ts3.4/IAMClient.d.ts +66 -0
  71. package/dist-types/ts3.4/commands/AcceptDelegationRequestCommand.d.ts +47 -0
  72. package/dist-types/ts3.4/commands/AssociateDelegationRequestCommand.d.ts +47 -0
  73. package/dist-types/ts3.4/commands/DisableOutboundWebIdentityFederationCommand.d.ts +45 -0
  74. package/dist-types/ts3.4/commands/EnableOutboundWebIdentityFederationCommand.d.ts +47 -0
  75. package/dist-types/ts3.4/commands/GetDelegationRequestCommand.d.ts +51 -0
  76. package/dist-types/ts3.4/commands/GetHumanReadableSummaryCommand.d.ts +51 -0
  77. package/dist-types/ts3.4/commands/GetOutboundWebIdentityFederationInfoCommand.d.ts +47 -0
  78. package/dist-types/ts3.4/commands/ListDelegationRequestsCommand.d.ts +51 -0
  79. package/dist-types/ts3.4/commands/RejectDelegationRequestCommand.d.ts +47 -0
  80. package/dist-types/ts3.4/commands/SendDelegationTokenCommand.d.ts +46 -0
  81. package/dist-types/ts3.4/commands/SetSecurityTokenServicePreferencesCommand.d.ts +1 -1
  82. package/dist-types/ts3.4/commands/SimulateCustomPolicyCommand.d.ts +1 -1
  83. package/dist-types/ts3.4/commands/SimulatePrincipalPolicyCommand.d.ts +1 -1
  84. package/dist-types/ts3.4/commands/TagInstanceProfileCommand.d.ts +1 -1
  85. package/dist-types/ts3.4/commands/TagMFADeviceCommand.d.ts +1 -1
  86. package/dist-types/ts3.4/commands/TagOpenIDConnectProviderCommand.d.ts +1 -1
  87. package/dist-types/ts3.4/commands/TagPolicyCommand.d.ts +1 -1
  88. package/dist-types/ts3.4/commands/TagRoleCommand.d.ts +1 -1
  89. package/dist-types/ts3.4/commands/TagSAMLProviderCommand.d.ts +1 -1
  90. package/dist-types/ts3.4/commands/TagServerCertificateCommand.d.ts +1 -1
  91. package/dist-types/ts3.4/commands/TagUserCommand.d.ts +1 -1
  92. package/dist-types/ts3.4/commands/UntagInstanceProfileCommand.d.ts +1 -1
  93. package/dist-types/ts3.4/commands/UntagMFADeviceCommand.d.ts +1 -1
  94. package/dist-types/ts3.4/commands/UntagOpenIDConnectProviderCommand.d.ts +1 -1
  95. package/dist-types/ts3.4/commands/UntagPolicyCommand.d.ts +1 -1
  96. package/dist-types/ts3.4/commands/UntagRoleCommand.d.ts +1 -1
  97. package/dist-types/ts3.4/commands/UntagSAMLProviderCommand.d.ts +1 -1
  98. package/dist-types/ts3.4/commands/UntagServerCertificateCommand.d.ts +1 -1
  99. package/dist-types/ts3.4/commands/UntagUserCommand.d.ts +1 -1
  100. package/dist-types/ts3.4/commands/UpdateAccessKeyCommand.d.ts +1 -1
  101. package/dist-types/ts3.4/commands/UpdateAccountPasswordPolicyCommand.d.ts +1 -1
  102. package/dist-types/ts3.4/commands/UpdateAssumeRolePolicyCommand.d.ts +1 -1
  103. package/dist-types/ts3.4/commands/UpdateDelegationRequestCommand.d.ts +47 -0
  104. package/dist-types/ts3.4/commands/UpdateGroupCommand.d.ts +1 -1
  105. package/dist-types/ts3.4/commands/UpdateLoginProfileCommand.d.ts +1 -1
  106. package/dist-types/ts3.4/commands/index.d.ts +11 -0
  107. package/dist-types/ts3.4/index.d.ts +4 -1
  108. package/dist-types/ts3.4/models/enums.d.ts +222 -0
  109. package/dist-types/ts3.4/models/errors.d.ts +297 -0
  110. package/dist-types/ts3.4/models/models_0.d.ts +279 -390
  111. package/dist-types/ts3.4/models/models_1.d.ts +1 -265
  112. package/dist-types/ts3.4/schemas/schemas_0.d.ts +29 -0
  113. package/package.json +12 -12
  114. package/dist-es/models/index.js +0 -2
  115. package/dist-types/models/index.d.ts +0 -2
  116. package/dist-types/ts3.4/models/index.d.ts +0 -2
@@ -1,1319 +1,5 @@
1
- import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
2
- import { IAMServiceException as __BaseException } from "./IAMServiceException";
3
- import { AssertionEncryptionModeType, GlobalEndpointTokenVersion, Role, ServerCertificateMetadata, SigningCertificate, SSHPublicKey, StatusType, Tag } from "./models_0";
4
- /**
5
- * @public
6
- */
7
- export interface SetSecurityTokenServicePreferencesRequest {
8
- /**
9
- * <p>The version of the global endpoint token. Version 1 tokens are valid only in Amazon Web Services Regions that are available by default. These tokens do not work in
10
- * manually enabled Regions, such as Asia Pacific (Hong Kong). Version 2 tokens are valid
11
- * in all Regions. However, version 2 tokens are longer and might affect systems where you
12
- * temporarily store tokens.</p>
13
- * <p>For information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html">Activating and
14
- * deactivating STS in an Amazon Web Services Region</a> in the
15
- * <i>IAM User Guide</i>.</p>
16
- * @public
17
- */
18
- GlobalEndpointTokenVersion: GlobalEndpointTokenVersion | undefined;
19
- }
20
- /**
21
- * <p>The request failed because a provided policy could not be successfully evaluated. An
22
- * additional detailed message indicates the source of the failure.</p>
23
- * @public
24
- */
25
- export declare class PolicyEvaluationException extends __BaseException {
26
- readonly name: "PolicyEvaluationException";
27
- readonly $fault: "server";
28
- /**
29
- * @internal
30
- */
31
- constructor(opts: __ExceptionOptionType<PolicyEvaluationException, __BaseException>);
32
- }
33
- /**
34
- * @public
35
- * @enum
36
- */
37
- export declare const ContextKeyTypeEnum: {
38
- readonly BINARY: "binary";
39
- readonly BINARY_LIST: "binaryList";
40
- readonly BOOLEAN: "boolean";
41
- readonly BOOLEAN_LIST: "booleanList";
42
- readonly DATE: "date";
43
- readonly DATE_LIST: "dateList";
44
- readonly IP: "ip";
45
- readonly IP_LIST: "ipList";
46
- readonly NUMERIC: "numeric";
47
- readonly NUMERIC_LIST: "numericList";
48
- readonly STRING: "string";
49
- readonly STRING_LIST: "stringList";
50
- };
51
- /**
52
- * @public
53
- */
54
- export type ContextKeyTypeEnum = (typeof ContextKeyTypeEnum)[keyof typeof ContextKeyTypeEnum];
55
- /**
56
- * <p>Contains information about a condition context key. It includes the name of the key and
57
- * specifies the value (or values, if the context key supports multiple values) to use in the
58
- * simulation. This information is used when evaluating the <code>Condition</code> elements of
59
- * the input policies.</p>
60
- * <p>This data type is used as an input parameter to <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulateCustomPolicy.html">SimulateCustomPolicy</a>
61
- * and <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulatePrincipalPolicy.html">SimulatePrincipalPolicy</a>.</p>
62
- * @public
63
- */
64
- export interface ContextEntry {
65
- /**
66
- * <p>The full name of a condition context key, including the service prefix. For example,
67
- * <code>aws:SourceIp</code> or <code>s3:VersionId</code>.</p>
68
- * @public
69
- */
70
- ContextKeyName?: string | undefined;
71
- /**
72
- * <p>The value (or values, if the condition context key supports multiple values) to provide
73
- * to the simulation when the key is referenced by a <code>Condition</code> element in an
74
- * input policy.</p>
75
- * @public
76
- */
77
- ContextKeyValues?: string[] | undefined;
78
- /**
79
- * <p>The data type of the value (or values) specified in the <code>ContextKeyValues</code>
80
- * parameter.</p>
81
- * @public
82
- */
83
- ContextKeyType?: ContextKeyTypeEnum | undefined;
84
- }
85
- /**
86
- * @public
87
- */
88
- export interface SimulateCustomPolicyRequest {
89
- /**
90
- * <p>A list of policy documents to include in the simulation. Each document is specified as
91
- * a string containing the complete, valid JSON text of an IAM policy. Do not include any
92
- * resource-based policies in this parameter. Any resource-based policy must be submitted
93
- * with the <code>ResourcePolicy</code> parameter. The policies cannot be "scope-down"
94
- * policies, such as you could include in a call to <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetFederationToken.html">GetFederationToken</a> or one of
95
- * the <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_AssumeRole.html">AssumeRole</a> API operations. In other words, do not use policies designed to
96
- * restrict what a user can do while using the temporary credentials.</p>
97
- * <p>The maximum length of the policy document that you can pass in this operation,
98
- * including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length">IAM and STS character quotas</a>.</p>
99
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
100
- * used to validate this parameter is a string of characters consisting of the following:</p>
101
- * <ul>
102
- * <li>
103
- * <p>Any printable ASCII
104
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
105
- * </li>
106
- * <li>
107
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
108
- * (through <code>\u00FF</code>)</p>
109
- * </li>
110
- * <li>
111
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
112
- * carriage return (<code>\u000D</code>)</p>
113
- * </li>
114
- * </ul>
115
- * @public
116
- */
117
- PolicyInputList: string[] | undefined;
118
- /**
119
- * <p>The IAM permissions boundary policy to simulate. The permissions boundary sets the
120
- * maximum permissions that an IAM entity can have. You can input only one permissions
121
- * boundary when you pass a policy to this operation. For more information about
122
- * permissions boundaries, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html">Permissions boundaries for IAM
123
- * entities</a> in the <i>IAM User Guide</i>. The policy input is
124
- * specified as a string that contains the complete, valid JSON text of a permissions
125
- * boundary policy.</p>
126
- * <p>The maximum length of the policy document that you can pass in this operation,
127
- * including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length">IAM and STS character quotas</a>.</p>
128
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
129
- * used to validate this parameter is a string of characters consisting of the following:</p>
130
- * <ul>
131
- * <li>
132
- * <p>Any printable ASCII
133
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
134
- * </li>
135
- * <li>
136
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
137
- * (through <code>\u00FF</code>)</p>
138
- * </li>
139
- * <li>
140
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
141
- * carriage return (<code>\u000D</code>)</p>
142
- * </li>
143
- * </ul>
144
- * @public
145
- */
146
- PermissionsBoundaryPolicyInputList?: string[] | undefined;
147
- /**
148
- * <p>A list of names of API operations to evaluate in the simulation. Each operation is
149
- * evaluated against each resource. Each operation must include the service identifier,
150
- * such as <code>iam:CreateUser</code>. This operation does not support using wildcards (*)
151
- * in an action name.</p>
152
- * @public
153
- */
154
- ActionNames: string[] | undefined;
155
- /**
156
- * <p>A list of ARNs of Amazon Web Services resources to include in the simulation. If this parameter is
157
- * not provided, then the value defaults to <code>*</code> (all resources). Each API in the
158
- * <code>ActionNames</code> parameter is evaluated for each resource in this list. The
159
- * simulation determines the access result (allowed or denied) of each combination and
160
- * reports it in the response. You can simulate resources that don't exist in your
161
- * account.</p>
162
- * <p>The simulation does not automatically retrieve policies for the specified resources.
163
- * If you want to include a resource policy in the simulation, then you must include the
164
- * policy as a string in the <code>ResourcePolicy</code> parameter.</p>
165
- * <p>If you include a <code>ResourcePolicy</code>, then it must be applicable to all of the
166
- * resources included in the simulation or you receive an invalid input error.</p>
167
- * <p>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)</a> in the <i>Amazon Web Services General Reference</i>.</p>
168
- * <note>
169
- * <p>Simulation of resource-based policies isn't supported for IAM roles.</p>
170
- * </note>
171
- * @public
172
- */
173
- ResourceArns?: string[] | undefined;
174
- /**
175
- * <p>A resource-based policy to include in the simulation provided as a string. Each
176
- * resource in the simulation is treated as if it had this policy attached. You can include
177
- * only one resource-based policy in a simulation.</p>
178
- * <p>The maximum length of the policy document that you can pass in this operation,
179
- * including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length">IAM and STS character quotas</a>.</p>
180
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
181
- * used to validate this parameter is a string of characters consisting of the following:</p>
182
- * <ul>
183
- * <li>
184
- * <p>Any printable ASCII
185
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
186
- * </li>
187
- * <li>
188
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
189
- * (through <code>\u00FF</code>)</p>
190
- * </li>
191
- * <li>
192
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
193
- * carriage return (<code>\u000D</code>)</p>
194
- * </li>
195
- * </ul>
196
- * <note>
197
- * <p>Simulation of resource-based policies isn't supported for IAM roles.</p>
198
- * </note>
199
- * @public
200
- */
201
- ResourcePolicy?: string | undefined;
202
- /**
203
- * <p>An ARN representing the Amazon Web Services account ID that specifies the owner of any simulated
204
- * resource that does not identify its owner in the resource ARN. Examples of resource ARNs
205
- * include an S3 bucket or object. If <code>ResourceOwner</code> is specified, it is also
206
- * used as the account owner of any <code>ResourcePolicy</code> included in the simulation.
207
- * If the <code>ResourceOwner</code> parameter is not specified, then the owner of the
208
- * resources and the resource policy defaults to the account of the identity provided in
209
- * <code>CallerArn</code>. This parameter is required only if you specify a
210
- * resource-based policy and account that owns the resource is different from the account
211
- * that owns the simulated calling user <code>CallerArn</code>.</p>
212
- * <p>The ARN for an account uses the following syntax:
213
- * <code>arn:aws:iam::<i>AWS-account-ID</i>:root</code>. For example,
214
- * to represent the account with the 112233445566 ID, use the following ARN:
215
- * <code>arn:aws:iam::112233445566-ID:root</code>. </p>
216
- * @public
217
- */
218
- ResourceOwner?: string | undefined;
219
- /**
220
- * <p>The ARN of the IAM user that you want to use as the simulated caller of the API
221
- * operations. <code>CallerArn</code> is required if you include a
222
- * <code>ResourcePolicy</code> so that the policy's <code>Principal</code> element has
223
- * a value to use in evaluating the policy.</p>
224
- * <p>You can specify only the ARN of an IAM user. You cannot specify the ARN of an
225
- * assumed role, federated user, or a service principal.</p>
226
- * @public
227
- */
228
- CallerArn?: string | undefined;
229
- /**
230
- * <p>A list of context keys and corresponding values for the simulation to use. Whenever a
231
- * context key is evaluated in one of the simulated IAM permissions policies, the
232
- * corresponding value is supplied.</p>
233
- * @public
234
- */
235
- ContextEntries?: ContextEntry[] | undefined;
236
- /**
237
- * <p>Specifies the type of simulation to run. Different API operations that support
238
- * resource-based policies require different combinations of resources. By specifying the
239
- * type of simulation to run, you enable the policy simulator to enforce the presence of
240
- * the required resources to ensure reliable simulation results. If your simulation does
241
- * not match one of the following scenarios, then you can omit this parameter. The
242
- * following list shows each of the supported scenario values and the resources that you
243
- * must define to run the simulation.</p>
244
- * <p>Each of the Amazon EC2 scenarios requires that you specify instance, image, and security
245
- * group resources. If your scenario includes an EBS volume, then you must specify that
246
- * volume as a resource. If the Amazon EC2 scenario includes VPC, then you must supply the
247
- * network interface resource. If it includes an IP subnet, then you must specify the
248
- * subnet resource. For more information on the Amazon EC2 scenario options, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported platforms</a> in the <i>Amazon EC2 User Guide</i>.</p>
249
- * <ul>
250
- * <li>
251
- * <p>
252
- * <b>EC2-VPC-InstanceStore</b>
253
- * </p>
254
- * <p>instance, image, security group, network interface</p>
255
- * </li>
256
- * <li>
257
- * <p>
258
- * <b>EC2-VPC-InstanceStore-Subnet</b>
259
- * </p>
260
- * <p>instance, image, security group, network interface, subnet</p>
261
- * </li>
262
- * <li>
263
- * <p>
264
- * <b>EC2-VPC-EBS</b>
265
- * </p>
266
- * <p>instance, image, security group, network interface, volume</p>
267
- * </li>
268
- * <li>
269
- * <p>
270
- * <b>EC2-VPC-EBS-Subnet</b>
271
- * </p>
272
- * <p>instance, image, security group, network interface, subnet, volume</p>
273
- * </li>
274
- * </ul>
275
- * @public
276
- */
277
- ResourceHandlingOption?: string | undefined;
278
- /**
279
- * <p>Use this only when paginating results to indicate the
280
- * maximum number of items you want in the response. If additional items exist beyond the maximum
281
- * you specify, the <code>IsTruncated</code> response element is <code>true</code>.</p>
282
- * <p>If you do not include this parameter, the number of items defaults to 100. Note that
283
- * IAM might return fewer results, even when there are more results available. In that case, the
284
- * <code>IsTruncated</code> response element returns <code>true</code>, and <code>Marker</code>
285
- * contains a value to include in the subsequent call that tells the service where to continue
286
- * from.</p>
287
- * @public
288
- */
289
- MaxItems?: number | undefined;
290
- /**
291
- * <p>Use this parameter only when paginating results and only after
292
- * you receive a response indicating that the results are truncated. Set it to the value of the
293
- * <code>Marker</code> element in the response that you received to indicate where the next call
294
- * should start.</p>
295
- * @public
296
- */
297
- Marker?: string | undefined;
298
- }
299
- /**
300
- * @public
301
- * @enum
302
- */
303
- export declare const PolicyEvaluationDecisionType: {
304
- readonly ALLOWED: "allowed";
305
- readonly EXPLICIT_DENY: "explicitDeny";
306
- readonly IMPLICIT_DENY: "implicitDeny";
307
- };
308
- /**
309
- * @public
310
- */
311
- export type PolicyEvaluationDecisionType = (typeof PolicyEvaluationDecisionType)[keyof typeof PolicyEvaluationDecisionType];
312
- /**
313
- * <p>Contains the row and column of a location of a <code>Statement</code> element in a
314
- * policy document.</p>
315
- * <p>This data type is used as a member of the <code>
316
- * <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_Statement.html">Statement</a>
317
- * </code> type.</p>
318
- * @public
319
- */
320
- export interface Position {
321
- /**
322
- * <p>The line containing the specified position in the document.</p>
323
- * @public
324
- */
325
- Line?: number | undefined;
326
- /**
327
- * <p>The column in the line containing the specified position in the document.</p>
328
- * @public
329
- */
330
- Column?: number | undefined;
331
- }
332
- /**
333
- * @public
334
- * @enum
335
- */
336
- export declare const PolicySourceType: {
337
- readonly AWS_MANAGED: "aws-managed";
338
- readonly GROUP: "group";
339
- readonly NONE: "none";
340
- readonly RESOURCE: "resource";
341
- readonly ROLE: "role";
342
- readonly USER: "user";
343
- readonly USER_MANAGED: "user-managed";
344
- };
345
- /**
346
- * @public
347
- */
348
- export type PolicySourceType = (typeof PolicySourceType)[keyof typeof PolicySourceType];
349
- /**
350
- * <p>Contains a reference to a <code>Statement</code> element in a policy document that
351
- * determines the result of the simulation.</p>
352
- * <p>This data type is used by the <code>MatchedStatements</code> member of the <code>
353
- * <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_EvaluationResult.html">EvaluationResult</a>
354
- * </code> type.</p>
355
- * @public
356
- */
357
- export interface Statement {
358
- /**
359
- * <p>The identifier of the policy that was provided as an input.</p>
360
- * @public
361
- */
362
- SourcePolicyId?: string | undefined;
363
- /**
364
- * <p>The type of the policy.</p>
365
- * @public
366
- */
367
- SourcePolicyType?: PolicySourceType | undefined;
368
- /**
369
- * <p>The row and column of the beginning of the <code>Statement</code> in an IAM
370
- * policy.</p>
371
- * @public
372
- */
373
- StartPosition?: Position | undefined;
374
- /**
375
- * <p>The row and column of the end of a <code>Statement</code> in an IAM policy.</p>
376
- * @public
377
- */
378
- EndPosition?: Position | undefined;
379
- }
380
- /**
381
- * <p>Contains information about the effect that Organizations has on a policy simulation.</p>
382
- * @public
383
- */
384
- export interface OrganizationsDecisionDetail {
385
- /**
386
- * <p>Specifies whether the simulated operation is allowed by the Organizations service control
387
- * policies that impact the simulated user's account.</p>
388
- * @public
389
- */
390
- AllowedByOrganizations?: boolean | undefined;
391
- }
392
- /**
393
- * <p>Contains information about the effect that a permissions boundary has on a policy
394
- * simulation when the boundary is applied to an IAM entity.</p>
395
- * @public
396
- */
397
- export interface PermissionsBoundaryDecisionDetail {
398
- /**
399
- * <p>Specifies whether an action is allowed by a permissions boundary that is applied to an
400
- * IAM entity (user or role). A value of <code>true</code> means that the permissions
401
- * boundary does not deny the action. This means that the policy includes an
402
- * <code>Allow</code> statement that matches the request. In this case, if an
403
- * identity-based policy also allows the action, the request is allowed. A value of
404
- * <code>false</code> means that either the requested action is not allowed (implicitly
405
- * denied) or that the action is explicitly denied by the permissions boundary. In both of
406
- * these cases, the action is not allowed, regardless of the identity-based policy.</p>
407
- * @public
408
- */
409
- AllowedByPermissionsBoundary?: boolean | undefined;
410
- }
411
- /**
412
- * <p>Contains the result of the simulation of a single API operation call on a single
413
- * resource.</p>
414
- * <p>This data type is used by a member of the <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_EvaluationResult.html">EvaluationResult</a> data
415
- * type.</p>
416
- * @public
417
- */
418
- export interface ResourceSpecificResult {
419
- /**
420
- * <p>The name of the simulated resource, in Amazon Resource Name (ARN) format.</p>
421
- * @public
422
- */
423
- EvalResourceName: string | undefined;
424
- /**
425
- * <p>The result of the simulation of the simulated API operation on the resource specified in
426
- * <code>EvalResourceName</code>.</p>
427
- * @public
428
- */
429
- EvalResourceDecision: PolicyEvaluationDecisionType | undefined;
430
- /**
431
- * <p>A list of the statements in the input policies that determine the result for this part
432
- * of the simulation. Remember that even if multiple statements allow the operation on the
433
- * resource, if <i>any</i> statement denies that operation, then the explicit
434
- * deny overrides any allow. In addition, the deny statement is the only entry included in the
435
- * result.</p>
436
- * @public
437
- */
438
- MatchedStatements?: Statement[] | undefined;
439
- /**
440
- * <p>A list of context keys that are required by the included input policies but that were
441
- * not provided by one of the input parameters. This list is used when a list of ARNs is
442
- * included in the <code>ResourceArns</code> parameter instead of "*". If you do not specify
443
- * individual resources, by setting <code>ResourceArns</code> to "*" or by not including the
444
- * <code>ResourceArns</code> parameter, then any missing context values are instead
445
- * included under the <code>EvaluationResults</code> section. To discover the context keys
446
- * used by a set of policies, you can call <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForCustomPolicy.html">GetContextKeysForCustomPolicy</a> or <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForPrincipalPolicy.html">GetContextKeysForPrincipalPolicy</a>.</p>
447
- * @public
448
- */
449
- MissingContextValues?: string[] | undefined;
450
- /**
451
- * <p>Additional details about the results of the evaluation decision on a single resource.
452
- * This parameter is returned only for cross-account simulations. This parameter explains how
453
- * each policy type contributes to the resource-specific evaluation decision.</p>
454
- * @public
455
- */
456
- EvalDecisionDetails?: Record<string, PolicyEvaluationDecisionType> | undefined;
457
- /**
458
- * <p>Contains information about the effect that a permissions boundary has on a policy
459
- * simulation when that boundary is applied to an IAM entity.</p>
460
- * @public
461
- */
462
- PermissionsBoundaryDecisionDetail?: PermissionsBoundaryDecisionDetail | undefined;
463
- }
464
- /**
465
- * <p>Contains the results of a simulation.</p>
466
- * <p>This data type is used by the return parameter of <code>
467
- * <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulateCustomPolicy.html">SimulateCustomPolicy</a>
468
- * </code> and <code>
469
- * <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulatePrincipalPolicy.html">SimulatePrincipalPolicy</a>
470
- * </code>.</p>
471
- * @public
472
- */
473
- export interface EvaluationResult {
474
- /**
475
- * <p>The name of the API operation tested on the indicated resource.</p>
476
- * @public
477
- */
478
- EvalActionName: string | undefined;
479
- /**
480
- * <p>The ARN of the resource that the indicated API operation was tested on.</p>
481
- * @public
482
- */
483
- EvalResourceName?: string | undefined;
484
- /**
485
- * <p>The result of the simulation.</p>
486
- * @public
487
- */
488
- EvalDecision: PolicyEvaluationDecisionType | undefined;
489
- /**
490
- * <p>A list of the statements in the input policies that determine the result for this
491
- * scenario. Remember that even if multiple statements allow the operation on the resource, if
492
- * only one statement denies that operation, then the explicit deny overrides any allow. In
493
- * addition, the deny statement is the only entry included in the result.</p>
494
- * @public
495
- */
496
- MatchedStatements?: Statement[] | undefined;
497
- /**
498
- * <p>A list of context keys that are required by the included input policies but that were
499
- * not provided by one of the input parameters. This list is used when the resource in a
500
- * simulation is "*", either explicitly, or when the <code>ResourceArns</code> parameter
501
- * blank. If you include a list of resources, then any missing context values are instead
502
- * included under the <code>ResourceSpecificResults</code> section. To discover the context
503
- * keys used by a set of policies, you can call <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForCustomPolicy.html">GetContextKeysForCustomPolicy</a> or <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetContextKeysForPrincipalPolicy.html">GetContextKeysForPrincipalPolicy</a>.</p>
504
- * @public
505
- */
506
- MissingContextValues?: string[] | undefined;
507
- /**
508
- * <p>A structure that details how Organizations and its service control policies affect the results of
509
- * the simulation. Only applies if the simulated user's account is part of an
510
- * organization.</p>
511
- * @public
512
- */
513
- OrganizationsDecisionDetail?: OrganizationsDecisionDetail | undefined;
514
- /**
515
- * <p>Contains information about the effect that a permissions boundary has on a policy
516
- * simulation when the boundary is applied to an IAM entity.</p>
517
- * @public
518
- */
519
- PermissionsBoundaryDecisionDetail?: PermissionsBoundaryDecisionDetail | undefined;
520
- /**
521
- * <p>Additional details about the results of the cross-account evaluation decision. This
522
- * parameter is populated for only cross-account simulations. It contains a brief summary of
523
- * how each policy type contributes to the final evaluation decision.</p>
524
- * <p>If the simulation evaluates policies within the same account and includes a resource
525
- * ARN, then the parameter is present but the response is empty. If the simulation evaluates
526
- * policies within the same account and specifies all resources (<code>*</code>), then the
527
- * parameter is not returned.</p>
528
- * <p>When you make a cross-account request, Amazon Web Services evaluates the request in the trusting
529
- * account and the trusted account. The request is allowed only if both evaluations return
530
- * <code>true</code>. For more information about how policies are evaluated, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-basics">Evaluating policies within a single account</a>.</p>
531
- * <p>If an Organizations SCP included in the evaluation denies access, the simulation ends. In
532
- * this case, policy evaluation does not proceed any further and this parameter is not
533
- * returned.</p>
534
- * @public
535
- */
536
- EvalDecisionDetails?: Record<string, PolicyEvaluationDecisionType> | undefined;
537
- /**
538
- * <p>The individual results of the simulation of the API operation specified in
539
- * EvalActionName on each resource.</p>
540
- * @public
541
- */
542
- ResourceSpecificResults?: ResourceSpecificResult[] | undefined;
543
- }
544
- /**
545
- * <p>Contains the response to a successful <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulatePrincipalPolicy.html">SimulatePrincipalPolicy</a> or <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulateCustomPolicy.html">SimulateCustomPolicy</a>
546
- * request.</p>
547
- * @public
548
- */
549
- export interface SimulatePolicyResponse {
550
- /**
551
- * <p>The results of the simulation.</p>
552
- * @public
553
- */
554
- EvaluationResults?: EvaluationResult[] | undefined;
555
- /**
556
- * <p>A flag that indicates whether there are more items to return. If your
557
- * results were truncated, you can make a subsequent pagination request using the <code>Marker</code>
558
- * request parameter to retrieve more items. Note that IAM might return fewer than the
559
- * <code>MaxItems</code> number of results even when there are more results available. We recommend
560
- * that you check <code>IsTruncated</code> after every call to ensure that you receive all your
561
- * results.</p>
562
- * @public
563
- */
564
- IsTruncated?: boolean | undefined;
565
- /**
566
- * <p>When <code>IsTruncated</code> is <code>true</code>, this element
567
- * is present and contains the value to use for the <code>Marker</code> parameter in a subsequent
568
- * pagination request.</p>
569
- * @public
570
- */
571
- Marker?: string | undefined;
572
- }
573
- /**
574
- * @public
575
- */
576
- export interface SimulatePrincipalPolicyRequest {
577
- /**
578
- * <p>The Amazon Resource Name (ARN) of a user, group, or role whose policies you want to
579
- * include in the simulation. If you specify a user, group, or role, the simulation
580
- * includes all policies that are associated with that entity. If you specify a user, the
581
- * simulation also includes all policies that are attached to any groups the user belongs
582
- * to.</p>
583
- * <p>The maximum length of the policy document that you can pass in this operation,
584
- * including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length">IAM and STS character quotas</a>.</p>
585
- * <p>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)</a> in the <i>Amazon Web Services General Reference</i>.</p>
586
- * @public
587
- */
588
- PolicySourceArn: string | undefined;
589
- /**
590
- * <p>An optional list of additional policy documents to include in the simulation. Each
591
- * document is specified as a string containing the complete, valid JSON text of an IAM
592
- * policy.</p>
593
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
594
- * used to validate this parameter is a string of characters consisting of the following:</p>
595
- * <ul>
596
- * <li>
597
- * <p>Any printable ASCII
598
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
599
- * </li>
600
- * <li>
601
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
602
- * (through <code>\u00FF</code>)</p>
603
- * </li>
604
- * <li>
605
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
606
- * carriage return (<code>\u000D</code>)</p>
607
- * </li>
608
- * </ul>
609
- * @public
610
- */
611
- PolicyInputList?: string[] | undefined;
612
- /**
613
- * <p>The IAM permissions boundary policy to simulate. The permissions boundary sets the
614
- * maximum permissions that the entity can have. You can input only one permissions
615
- * boundary when you pass a policy to this operation. An IAM entity can only have one
616
- * permissions boundary in effect at a time. For example, if a permissions boundary is
617
- * attached to an entity and you pass in a different permissions boundary policy using this
618
- * parameter, then the new permissions boundary policy is used for the simulation. For more
619
- * information about permissions boundaries, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html">Permissions boundaries for IAM
620
- * entities</a> in the <i>IAM User Guide</i>. The policy input is
621
- * specified as a string containing the complete, valid JSON text of a permissions boundary
622
- * policy.</p>
623
- * <p>The maximum length of the policy document that you can pass in this operation,
624
- * including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length">IAM and STS character quotas</a>.</p>
625
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
626
- * used to validate this parameter is a string of characters consisting of the following:</p>
627
- * <ul>
628
- * <li>
629
- * <p>Any printable ASCII
630
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
631
- * </li>
632
- * <li>
633
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
634
- * (through <code>\u00FF</code>)</p>
635
- * </li>
636
- * <li>
637
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
638
- * carriage return (<code>\u000D</code>)</p>
639
- * </li>
640
- * </ul>
641
- * @public
642
- */
643
- PermissionsBoundaryPolicyInputList?: string[] | undefined;
644
- /**
645
- * <p>A list of names of API operations to evaluate in the simulation. Each operation is
646
- * evaluated for each resource. Each operation must include the service identifier, such as
647
- * <code>iam:CreateUser</code>.</p>
648
- * @public
649
- */
650
- ActionNames: string[] | undefined;
651
- /**
652
- * <p>A list of ARNs of Amazon Web Services resources to include in the simulation. If this parameter is
653
- * not provided, then the value defaults to <code>*</code> (all resources). Each API in the
654
- * <code>ActionNames</code> parameter is evaluated for each resource in this list. The
655
- * simulation determines the access result (allowed or denied) of each combination and
656
- * reports it in the response. You can simulate resources that don't exist in your
657
- * account.</p>
658
- * <p>The simulation does not automatically retrieve policies for the specified resources.
659
- * If you want to include a resource policy in the simulation, then you must include the
660
- * policy as a string in the <code>ResourcePolicy</code> parameter.</p>
661
- * <p>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)</a> in the <i>Amazon Web Services General Reference</i>.</p>
662
- * <note>
663
- * <p>Simulation of resource-based policies isn't supported for IAM roles.</p>
664
- * </note>
665
- * @public
666
- */
667
- ResourceArns?: string[] | undefined;
668
- /**
669
- * <p>A resource-based policy to include in the simulation provided as a string. Each
670
- * resource in the simulation is treated as if it had this policy attached. You can include
671
- * only one resource-based policy in a simulation.</p>
672
- * <p>The maximum length of the policy document that you can pass in this operation,
673
- * including whitespace, is listed below. To view the maximum character counts of a managed policy with no whitespaces, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length">IAM and STS character quotas</a>.</p>
674
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
675
- * used to validate this parameter is a string of characters consisting of the following:</p>
676
- * <ul>
677
- * <li>
678
- * <p>Any printable ASCII
679
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
680
- * </li>
681
- * <li>
682
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
683
- * (through <code>\u00FF</code>)</p>
684
- * </li>
685
- * <li>
686
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
687
- * carriage return (<code>\u000D</code>)</p>
688
- * </li>
689
- * </ul>
690
- * <note>
691
- * <p>Simulation of resource-based policies isn't supported for IAM roles.</p>
692
- * </note>
693
- * @public
694
- */
695
- ResourcePolicy?: string | undefined;
696
- /**
697
- * <p>An Amazon Web Services account ID that specifies the owner of any simulated resource that does not
698
- * identify its owner in the resource ARN. Examples of resource ARNs include an S3 bucket
699
- * or object. If <code>ResourceOwner</code> is specified, it is also used as the account
700
- * owner of any <code>ResourcePolicy</code> included in the simulation. If the
701
- * <code>ResourceOwner</code> parameter is not specified, then the owner of the
702
- * resources and the resource policy defaults to the account of the identity provided in
703
- * <code>CallerArn</code>. This parameter is required only if you specify a
704
- * resource-based policy and account that owns the resource is different from the account
705
- * that owns the simulated calling user <code>CallerArn</code>.</p>
706
- * @public
707
- */
708
- ResourceOwner?: string | undefined;
709
- /**
710
- * <p>The ARN of the IAM user that you want to specify as the simulated caller of the API
711
- * operations. If you do not specify a <code>CallerArn</code>, it defaults to the ARN of
712
- * the user that you specify in <code>PolicySourceArn</code>, if you specified a user. If
713
- * you include both a <code>PolicySourceArn</code> (for example,
714
- * <code>arn:aws:iam::123456789012:user/David</code>) and a <code>CallerArn</code> (for
715
- * example, <code>arn:aws:iam::123456789012:user/Bob</code>), the result is that you
716
- * simulate calling the API operations as Bob, as if Bob had David's policies.</p>
717
- * <p>You can specify only the ARN of an IAM user. You cannot specify the ARN of an
718
- * assumed role, federated user, or a service principal.</p>
719
- * <p>
720
- * <code>CallerArn</code> is required if you include a <code>ResourcePolicy</code> and
721
- * the <code>PolicySourceArn</code> is not the ARN for an IAM user. This is required so
722
- * that the resource-based policy's <code>Principal</code> element has a value to use in
723
- * evaluating the policy.</p>
724
- * <p>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)</a> in the <i>Amazon Web Services General Reference</i>.</p>
725
- * @public
726
- */
727
- CallerArn?: string | undefined;
728
- /**
729
- * <p>A list of context keys and corresponding values for the simulation to use. Whenever a
730
- * context key is evaluated in one of the simulated IAM permissions policies, the
731
- * corresponding value is supplied.</p>
732
- * @public
733
- */
734
- ContextEntries?: ContextEntry[] | undefined;
735
- /**
736
- * <p>Specifies the type of simulation to run. Different API operations that support
737
- * resource-based policies require different combinations of resources. By specifying the
738
- * type of simulation to run, you enable the policy simulator to enforce the presence of
739
- * the required resources to ensure reliable simulation results. If your simulation does
740
- * not match one of the following scenarios, then you can omit this parameter. The
741
- * following list shows each of the supported scenario values and the resources that you
742
- * must define to run the simulation.</p>
743
- * <p>Each of the Amazon EC2 scenarios requires that you specify instance, image, and security
744
- * group resources. If your scenario includes an EBS volume, then you must specify that
745
- * volume as a resource. If the Amazon EC2 scenario includes VPC, then you must supply the
746
- * network interface resource. If it includes an IP subnet, then you must specify the
747
- * subnet resource. For more information on the Amazon EC2 scenario options, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported platforms</a> in the <i>Amazon EC2 User Guide</i>.</p>
748
- * <ul>
749
- * <li>
750
- * <p>
751
- * <b>EC2-VPC-InstanceStore</b>
752
- * </p>
753
- * <p>instance, image, security group, network interface</p>
754
- * </li>
755
- * <li>
756
- * <p>
757
- * <b>EC2-VPC-InstanceStore-Subnet</b>
758
- * </p>
759
- * <p>instance, image, security group, network interface, subnet</p>
760
- * </li>
761
- * <li>
762
- * <p>
763
- * <b>EC2-VPC-EBS</b>
764
- * </p>
765
- * <p>instance, image, security group, network interface, volume</p>
766
- * </li>
767
- * <li>
768
- * <p>
769
- * <b>EC2-VPC-EBS-Subnet</b>
770
- * </p>
771
- * <p>instance, image, security group, network interface, subnet, volume</p>
772
- * </li>
773
- * </ul>
774
- * @public
775
- */
776
- ResourceHandlingOption?: string | undefined;
777
- /**
778
- * <p>Use this only when paginating results to indicate the
779
- * maximum number of items you want in the response. If additional items exist beyond the maximum
780
- * you specify, the <code>IsTruncated</code> response element is <code>true</code>.</p>
781
- * <p>If you do not include this parameter, the number of items defaults to 100. Note that
782
- * IAM might return fewer results, even when there are more results available. In that case, the
783
- * <code>IsTruncated</code> response element returns <code>true</code>, and <code>Marker</code>
784
- * contains a value to include in the subsequent call that tells the service where to continue
785
- * from.</p>
786
- * @public
787
- */
788
- MaxItems?: number | undefined;
789
- /**
790
- * <p>Use this parameter only when paginating results and only after
791
- * you receive a response indicating that the results are truncated. Set it to the value of the
792
- * <code>Marker</code> element in the response that you received to indicate where the next call
793
- * should start.</p>
794
- * @public
795
- */
796
- Marker?: string | undefined;
797
- }
798
- /**
799
- * @public
800
- */
801
- export interface TagInstanceProfileRequest {
802
- /**
803
- * <p>The name of the IAM instance profile to which you want to add tags.</p>
804
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
805
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
806
- * @public
807
- */
808
- InstanceProfileName: string | undefined;
809
- /**
810
- * <p>The list of tags that you want to attach to the IAM instance profile.
811
- * Each tag consists of a key name and an associated value.</p>
812
- * @public
813
- */
814
- Tags: Tag[] | undefined;
815
- }
816
- /**
817
- * @public
818
- */
819
- export interface TagMFADeviceRequest {
820
- /**
821
- * <p>The unique identifier for the IAM virtual MFA device to which you want to add tags.
822
- * For virtual MFA devices, the serial number is the same as the ARN.</p>
823
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
824
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
825
- * @public
826
- */
827
- SerialNumber: string | undefined;
828
- /**
829
- * <p>The list of tags that you want to attach to the IAM virtual MFA device.
830
- * Each tag consists of a key name and an associated value.</p>
831
- * @public
832
- */
833
- Tags: Tag[] | undefined;
834
- }
835
- /**
836
- * @public
837
- */
838
- export interface TagOpenIDConnectProviderRequest {
839
- /**
840
- * <p>The ARN of the OIDC identity provider in IAM to which you want to add tags.</p>
841
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
842
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
843
- * @public
844
- */
845
- OpenIDConnectProviderArn: string | undefined;
846
- /**
847
- * <p>The list of tags that you want to attach to the OIDC identity provider in IAM.
848
- * Each tag consists of a key name and an associated value.</p>
849
- * @public
850
- */
851
- Tags: Tag[] | undefined;
852
- }
853
- /**
854
- * @public
855
- */
856
- export interface TagPolicyRequest {
857
- /**
858
- * <p>The ARN of the IAM customer managed policy to which you want to add tags.</p>
859
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
860
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
861
- * @public
862
- */
863
- PolicyArn: string | undefined;
864
- /**
865
- * <p>The list of tags that you want to attach to the IAM customer managed policy.
866
- * Each tag consists of a key name and an associated value.</p>
867
- * @public
868
- */
869
- Tags: Tag[] | undefined;
870
- }
871
- /**
872
- * @public
873
- */
874
- export interface TagRoleRequest {
875
- /**
876
- * <p>The name of the IAM role to which you want to add tags.</p>
877
- * <p>This parameter accepts (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters that consist of upper and lowercase alphanumeric
878
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
879
- * @public
880
- */
881
- RoleName: string | undefined;
882
- /**
883
- * <p>The list of tags that you want to attach to the IAM role. Each tag consists of a key name and an associated value.</p>
884
- * @public
885
- */
886
- Tags: Tag[] | undefined;
887
- }
888
- /**
889
- * @public
890
- */
891
- export interface TagSAMLProviderRequest {
892
- /**
893
- * <p>The ARN of the SAML identity provider in IAM to which you want to add tags.</p>
894
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
895
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
896
- * @public
897
- */
898
- SAMLProviderArn: string | undefined;
899
- /**
900
- * <p>The list of tags that you want to attach to the SAML identity provider in IAM.
901
- * Each tag consists of a key name and an associated value.</p>
902
- * @public
903
- */
904
- Tags: Tag[] | undefined;
905
- }
906
- /**
907
- * @public
908
- */
909
- export interface TagServerCertificateRequest {
910
- /**
911
- * <p>The name of the IAM server certificate to which you want to add tags.</p>
912
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
913
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
914
- * @public
915
- */
916
- ServerCertificateName: string | undefined;
917
- /**
918
- * <p>The list of tags that you want to attach to the IAM server certificate.
919
- * Each tag consists of a key name and an associated value.</p>
920
- * @public
921
- */
922
- Tags: Tag[] | undefined;
923
- }
924
- /**
925
- * @public
926
- */
927
- export interface TagUserRequest {
928
- /**
929
- * <p>The name of the IAM user to which you want to add tags.</p>
930
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
931
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
932
- * @public
933
- */
934
- UserName: string | undefined;
935
- /**
936
- * <p>The list of tags that you want to attach to the IAM user. Each tag consists of a key name and an associated value.</p>
937
- * @public
938
- */
939
- Tags: Tag[] | undefined;
940
- }
941
- /**
942
- * @public
943
- */
944
- export interface UntagInstanceProfileRequest {
945
- /**
946
- * <p>The name of the IAM instance profile from which you want to remove tags.</p>
947
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
948
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
949
- * @public
950
- */
951
- InstanceProfileName: string | undefined;
952
- /**
953
- * <p>A list of key names as a simple array of strings. The tags with matching keys are
954
- * removed from the specified instance profile.</p>
955
- * @public
956
- */
957
- TagKeys: string[] | undefined;
958
- }
959
- /**
960
- * @public
961
- */
962
- export interface UntagMFADeviceRequest {
963
- /**
964
- * <p>The unique identifier for the IAM virtual MFA device from which you want to remove
965
- * tags. For virtual MFA devices, the serial number is the same as the ARN.</p>
966
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
967
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
968
- * @public
969
- */
970
- SerialNumber: string | undefined;
971
- /**
972
- * <p>A list of key names as a simple array of strings. The tags with matching keys are
973
- * removed from the specified instance profile.</p>
974
- * @public
975
- */
976
- TagKeys: string[] | undefined;
977
- }
978
- /**
979
- * @public
980
- */
981
- export interface UntagOpenIDConnectProviderRequest {
982
- /**
983
- * <p>The ARN of the OIDC provider in IAM from which you want to remove tags.</p>
984
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
985
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
986
- * @public
987
- */
988
- OpenIDConnectProviderArn: string | undefined;
989
- /**
990
- * <p>A list of key names as a simple array of strings. The tags with matching keys are
991
- * removed from the specified OIDC provider.</p>
992
- * @public
993
- */
994
- TagKeys: string[] | undefined;
995
- }
996
- /**
997
- * @public
998
- */
999
- export interface UntagPolicyRequest {
1000
- /**
1001
- * <p>The ARN of the IAM customer managed policy from which you want to remove
1002
- * tags.</p>
1003
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
1004
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
1005
- * @public
1006
- */
1007
- PolicyArn: string | undefined;
1008
- /**
1009
- * <p>A list of key names as a simple array of strings. The tags with matching keys are
1010
- * removed from the specified policy.</p>
1011
- * @public
1012
- */
1013
- TagKeys: string[] | undefined;
1014
- }
1015
- /**
1016
- * @public
1017
- */
1018
- export interface UntagRoleRequest {
1019
- /**
1020
- * <p>The name of the IAM role from which you want to remove tags.</p>
1021
- * <p>This parameter accepts (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters that consist of upper and lowercase alphanumeric
1022
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
1023
- * @public
1024
- */
1025
- RoleName: string | undefined;
1026
- /**
1027
- * <p>A list of key names as a simple array of strings. The tags with matching keys are
1028
- * removed from the specified role.</p>
1029
- * @public
1030
- */
1031
- TagKeys: string[] | undefined;
1032
- }
1033
- /**
1034
- * @public
1035
- */
1036
- export interface UntagSAMLProviderRequest {
1037
- /**
1038
- * <p>The ARN of the SAML identity provider in IAM from which you want to remove
1039
- * tags.</p>
1040
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
1041
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
1042
- * @public
1043
- */
1044
- SAMLProviderArn: string | undefined;
1045
- /**
1046
- * <p>A list of key names as a simple array of strings. The tags with matching keys are
1047
- * removed from the specified SAML identity provider.</p>
1048
- * @public
1049
- */
1050
- TagKeys: string[] | undefined;
1051
- }
1052
- /**
1053
- * @public
1054
- */
1055
- export interface UntagServerCertificateRequest {
1056
- /**
1057
- * <p>The name of the IAM server certificate from which you want to remove tags.</p>
1058
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
1059
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
1060
- * @public
1061
- */
1062
- ServerCertificateName: string | undefined;
1063
- /**
1064
- * <p>A list of key names as a simple array of strings. The tags with matching keys are
1065
- * removed from the specified IAM server certificate.</p>
1066
- * @public
1067
- */
1068
- TagKeys: string[] | undefined;
1069
- }
1070
- /**
1071
- * @public
1072
- */
1073
- export interface UntagUserRequest {
1074
- /**
1075
- * <p>The name of the IAM user from which you want to remove tags.</p>
1076
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
1077
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
1078
- * @public
1079
- */
1080
- UserName: string | undefined;
1081
- /**
1082
- * <p>A list of key names as a simple array of strings. The tags with matching keys are
1083
- * removed from the specified user.</p>
1084
- * @public
1085
- */
1086
- TagKeys: string[] | undefined;
1087
- }
1088
- /**
1089
- * @public
1090
- */
1091
- export interface UpdateAccessKeyRequest {
1092
- /**
1093
- * <p>The name of the user whose key you want to update.</p>
1094
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
1095
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
1096
- * @public
1097
- */
1098
- UserName?: string | undefined;
1099
- /**
1100
- * <p>The access key ID of the secret access key you want to update.</p>
1101
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters that can
1102
- * consist of any upper or lowercased letter or digit.</p>
1103
- * @public
1104
- */
1105
- AccessKeyId: string | undefined;
1106
- /**
1107
- * <p> The status you want to assign to the secret access key. <code>Active</code> means
1108
- * that the key can be used for programmatic calls to Amazon Web Services, while <code>Inactive</code>
1109
- * means that the key cannot be used.</p>
1110
- * @public
1111
- */
1112
- Status: StatusType | undefined;
1113
- }
1114
- /**
1115
- * @public
1116
- */
1117
- export interface UpdateAccountPasswordPolicyRequest {
1118
- /**
1119
- * <p>The minimum number of characters allowed in an IAM user password.</p>
1120
- * <p>If you do not specify a value for this parameter, then the operation uses the default
1121
- * value of <code>6</code>.</p>
1122
- * @public
1123
- */
1124
- MinimumPasswordLength?: number | undefined;
1125
- /**
1126
- * <p>Specifies whether IAM user passwords must contain at least one of the following
1127
- * non-alphanumeric characters:</p>
1128
- * <p>! @ # $ % ^ & * ( ) _ + - = [ ] \{ \} | '</p>
1129
- * <p>If you do not specify a value for this parameter, then the operation uses the default
1130
- * value of <code>false</code>. The result is that passwords do not require at least one
1131
- * symbol character.</p>
1132
- * @public
1133
- */
1134
- RequireSymbols?: boolean | undefined;
1135
- /**
1136
- * <p>Specifies whether IAM user passwords must contain at least one numeric character (0
1137
- * to 9).</p>
1138
- * <p>If you do not specify a value for this parameter, then the operation uses the default
1139
- * value of <code>false</code>. The result is that passwords do not require at least one
1140
- * numeric character.</p>
1141
- * @public
1142
- */
1143
- RequireNumbers?: boolean | undefined;
1144
- /**
1145
- * <p>Specifies whether IAM user passwords must contain at least one uppercase character
1146
- * from the ISO basic Latin alphabet (A to Z).</p>
1147
- * <p>If you do not specify a value for this parameter, then the operation uses the default
1148
- * value of <code>false</code>. The result is that passwords do not require at least one
1149
- * uppercase character.</p>
1150
- * @public
1151
- */
1152
- RequireUppercaseCharacters?: boolean | undefined;
1153
- /**
1154
- * <p>Specifies whether IAM user passwords must contain at least one lowercase character
1155
- * from the ISO basic Latin alphabet (a to z).</p>
1156
- * <p>If you do not specify a value for this parameter, then the operation uses the default
1157
- * value of <code>false</code>. The result is that passwords do not require at least one
1158
- * lowercase character.</p>
1159
- * @public
1160
- */
1161
- RequireLowercaseCharacters?: boolean | undefined;
1162
- /**
1163
- * <p> Allows all IAM users in your account to use the Amazon Web Services Management Console to change their own
1164
- * passwords. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_enable-user-change.html">Permitting
1165
- * IAM users to change their own passwords</a> in the
1166
- * <i>IAM User Guide</i>.</p>
1167
- * <p>If you do not specify a value for this parameter, then the operation uses the default
1168
- * value of <code>false</code>. The result is that IAM users in the account do not
1169
- * automatically have permissions to change their own password.</p>
1170
- * @public
1171
- */
1172
- AllowUsersToChangePassword?: boolean | undefined;
1173
- /**
1174
- * <p>The number of days that an IAM user password is valid.</p>
1175
- * <p>If you do not specify a value for this parameter, then the operation uses the default
1176
- * value of <code>0</code>. The result is that IAM user passwords never expire.</p>
1177
- * @public
1178
- */
1179
- MaxPasswordAge?: number | undefined;
1180
- /**
1181
- * <p>Specifies the number of previous passwords that IAM users are prevented from
1182
- * reusing.</p>
1183
- * <p>If you do not specify a value for this parameter, then the operation uses the default
1184
- * value of <code>0</code>. The result is that IAM users are not prevented from reusing
1185
- * previous passwords.</p>
1186
- * @public
1187
- */
1188
- PasswordReusePrevention?: number | undefined;
1189
- /**
1190
- * <p> Prevents IAM users who are accessing the account via the Amazon Web Services Management Console from setting a
1191
- * new console password after their password has expired. The IAM user cannot access the
1192
- * console until an administrator resets the password.</p>
1193
- * <p>If you do not specify a value for this parameter, then the operation uses the default
1194
- * value of <code>false</code>. The result is that IAM users can change their passwords
1195
- * after they expire and continue to sign in as the user.</p>
1196
- * <note>
1197
- * <p> In the Amazon Web Services Management Console, the custom password policy option <b>Allow
1198
- * users to change their own password</b> gives IAM users permissions to
1199
- * <code>iam:ChangePassword</code> for only their user and to the
1200
- * <code>iam:GetAccountPasswordPolicy</code> action. This option does not attach a
1201
- * permissions policy to each user, rather the permissions are applied at the
1202
- * account-level for all users by IAM. IAM users with
1203
- * <code>iam:ChangePassword</code> permission and active access keys can reset
1204
- * their own expired console password using the CLI or API.</p>
1205
- * </note>
1206
- * @public
1207
- */
1208
- HardExpiry?: boolean | undefined;
1209
- }
1210
- /**
1211
- * @public
1212
- */
1213
- export interface UpdateAssumeRolePolicyRequest {
1214
- /**
1215
- * <p>The name of the role to update with the new policy.</p>
1216
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
1217
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
1218
- * @public
1219
- */
1220
- RoleName: string | undefined;
1221
- /**
1222
- * <p>The policy that grants an entity permission to assume the role.</p>
1223
- * <p>You must provide policies in JSON format in IAM. However, for CloudFormation
1224
- * templates formatted in YAML, you can provide the policy in JSON or YAML format. CloudFormation always converts a YAML policy to JSON format before submitting it to
1225
- * IAM.</p>
1226
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
1227
- * used to validate this parameter is a string of characters consisting of the following:</p>
1228
- * <ul>
1229
- * <li>
1230
- * <p>Any printable ASCII
1231
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
1232
- * </li>
1233
- * <li>
1234
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
1235
- * (through <code>\u00FF</code>)</p>
1236
- * </li>
1237
- * <li>
1238
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
1239
- * carriage return (<code>\u000D</code>)</p>
1240
- * </li>
1241
- * </ul>
1242
- * @public
1243
- */
1244
- PolicyDocument: string | undefined;
1245
- }
1246
- /**
1247
- * @public
1248
- */
1249
- export interface UpdateGroupRequest {
1250
- /**
1251
- * <p>Name of the IAM group to update. If you're changing the name of the group, this is
1252
- * the original name.</p>
1253
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
1254
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
1255
- * @public
1256
- */
1257
- GroupName: string | undefined;
1258
- /**
1259
- * <p>New path for the IAM group. Only include this if changing the group's path.</p>
1260
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting
1261
- * of either a forward slash (/) by itself or a string that must begin and end with forward slashes.
1262
- * In addition, it can contain any ASCII character from the ! (<code>\u0021</code>) through the DEL character (<code>\u007F</code>), including
1263
- * most punctuation characters, digits, and upper and lowercased letters.</p>
1264
- * @public
1265
- */
1266
- NewPath?: string | undefined;
1267
- /**
1268
- * <p>New name for the IAM group. Only include this if changing the group's name.</p>
1269
- * <p>IAM user, group, role, and policy names must be unique within the account. Names are
1270
- * not distinguished by case. For example, you cannot create resources named both
1271
- * "MyResource" and "myresource".</p>
1272
- * @public
1273
- */
1274
- NewGroupName?: string | undefined;
1275
- }
1276
- /**
1277
- * @public
1278
- */
1279
- export interface UpdateLoginProfileRequest {
1280
- /**
1281
- * <p>The name of the user whose password you want to update.</p>
1282
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
1283
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
1284
- * @public
1285
- */
1286
- UserName: string | undefined;
1287
- /**
1288
- * <p>The new password for the specified IAM user.</p>
1289
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
1290
- * used to validate this parameter is a string of characters consisting of the following:</p>
1291
- * <ul>
1292
- * <li>
1293
- * <p>Any printable ASCII
1294
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
1295
- * </li>
1296
- * <li>
1297
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
1298
- * (through <code>\u00FF</code>)</p>
1299
- * </li>
1300
- * <li>
1301
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
1302
- * carriage return (<code>\u000D</code>)</p>
1303
- * </li>
1304
- * </ul>
1305
- * <p>However, the format can be further restricted by the account administrator by setting
1306
- * a password policy on the Amazon Web Services account. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccountPasswordPolicy.html">UpdateAccountPasswordPolicy</a>.</p>
1307
- * @public
1308
- */
1309
- Password?: string | undefined;
1310
- /**
1311
- * <p>Allows this new password to be used only once by requiring the specified IAM user to
1312
- * set a new password on next sign-in.</p>
1313
- * @public
1314
- */
1315
- PasswordResetRequired?: boolean | undefined;
1316
- }
1
+ import { AssertionEncryptionModeType, StatusType } from "./enums";
2
+ import { Role, ServerCertificateMetadata, SigningCertificate, SSHPublicKey, Tag } from "./models_0";
1317
3
  /**
1318
4
  * @public
1319
5
  */
@@ -1588,32 +274,6 @@ export interface UpdateUserRequest {
1588
274
  */
1589
275
  NewUserName?: string | undefined;
1590
276
  }
1591
- /**
1592
- * <p>The request was rejected because the public key certificate and the private key do not
1593
- * match.</p>
1594
- * @public
1595
- */
1596
- export declare class KeyPairMismatchException extends __BaseException {
1597
- readonly name: "KeyPairMismatchException";
1598
- readonly $fault: "client";
1599
- /**
1600
- * @internal
1601
- */
1602
- constructor(opts: __ExceptionOptionType<KeyPairMismatchException, __BaseException>);
1603
- }
1604
- /**
1605
- * <p>The request was rejected because the certificate was malformed or expired. The error
1606
- * message describes the specific error.</p>
1607
- * @public
1608
- */
1609
- export declare class MalformedCertificateException extends __BaseException {
1610
- readonly name: "MalformedCertificateException";
1611
- readonly $fault: "client";
1612
- /**
1613
- * @internal
1614
- */
1615
- constructor(opts: __ExceptionOptionType<MalformedCertificateException, __BaseException>);
1616
- }
1617
277
  /**
1618
278
  * @public
1619
279
  */
@@ -1738,31 +398,6 @@ export interface UploadServerCertificateResponse {
1738
398
  */
1739
399
  Tags?: Tag[] | undefined;
1740
400
  }
1741
- /**
1742
- * <p>The request was rejected because the same certificate is associated with an IAM user in
1743
- * the account.</p>
1744
- * @public
1745
- */
1746
- export declare class DuplicateCertificateException extends __BaseException {
1747
- readonly name: "DuplicateCertificateException";
1748
- readonly $fault: "client";
1749
- /**
1750
- * @internal
1751
- */
1752
- constructor(opts: __ExceptionOptionType<DuplicateCertificateException, __BaseException>);
1753
- }
1754
- /**
1755
- * <p>The request was rejected because the certificate is invalid.</p>
1756
- * @public
1757
- */
1758
- export declare class InvalidCertificateException extends __BaseException {
1759
- readonly name: "InvalidCertificateException";
1760
- readonly $fault: "client";
1761
- /**
1762
- * @internal
1763
- */
1764
- constructor(opts: __ExceptionOptionType<InvalidCertificateException, __BaseException>);
1765
- }
1766
401
  /**
1767
402
  * @public
1768
403
  */
@@ -1807,31 +442,6 @@ export interface UploadSigningCertificateResponse {
1807
442
  */
1808
443
  Certificate: SigningCertificate | undefined;
1809
444
  }
1810
- /**
1811
- * <p>The request was rejected because the SSH public key is already associated with the
1812
- * specified IAM user.</p>
1813
- * @public
1814
- */
1815
- export declare class DuplicateSSHPublicKeyException extends __BaseException {
1816
- readonly name: "DuplicateSSHPublicKeyException";
1817
- readonly $fault: "client";
1818
- /**
1819
- * @internal
1820
- */
1821
- constructor(opts: __ExceptionOptionType<DuplicateSSHPublicKeyException, __BaseException>);
1822
- }
1823
- /**
1824
- * <p>The request was rejected because the public key is malformed or otherwise invalid.</p>
1825
- * @public
1826
- */
1827
- export declare class InvalidPublicKeyException extends __BaseException {
1828
- readonly name: "InvalidPublicKeyException";
1829
- readonly $fault: "client";
1830
- /**
1831
- * @internal
1832
- */
1833
- constructor(opts: __ExceptionOptionType<InvalidPublicKeyException, __BaseException>);
1834
- }
1835
445
  /**
1836
446
  * @public
1837
447
  */