@aws-sdk/client-iam 3.511.0 → 3.514.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.
@@ -0,0 +1 @@
1
+ module.exports = require("../index.js");
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveHttpAuthSchemeConfig = exports.defaultIAMHttpAuthSchemeProvider = exports.defaultIAMHttpAuthSchemeParametersProvider = void 0;
4
+ const core_1 = require("@aws-sdk/core");
5
+ const util_middleware_1 = require("@smithy/util-middleware");
6
+ const defaultIAMHttpAuthSchemeParametersProvider = async (config, context, input) => {
7
+ return {
8
+ operation: (0, util_middleware_1.getSmithyContext)(context).operation,
9
+ region: (await (0, util_middleware_1.normalizeProvider)(config.region)()) ||
10
+ (() => {
11
+ throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
12
+ })(),
13
+ };
14
+ };
15
+ exports.defaultIAMHttpAuthSchemeParametersProvider = defaultIAMHttpAuthSchemeParametersProvider;
16
+ function createAwsAuthSigv4HttpAuthOption(authParameters) {
17
+ return {
18
+ schemeId: "aws.auth#sigv4",
19
+ signingProperties: {
20
+ name: "iam",
21
+ region: authParameters.region,
22
+ },
23
+ propertiesExtractor: (config, context) => ({
24
+ signingProperties: {
25
+ config,
26
+ context,
27
+ },
28
+ }),
29
+ };
30
+ }
31
+ const defaultIAMHttpAuthSchemeProvider = (authParameters) => {
32
+ const options = [];
33
+ switch (authParameters.operation) {
34
+ default: {
35
+ options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
36
+ }
37
+ }
38
+ return options;
39
+ };
40
+ exports.defaultIAMHttpAuthSchemeProvider = defaultIAMHttpAuthSchemeProvider;
41
+ const resolveHttpAuthSchemeConfig = (config) => {
42
+ const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
43
+ return {
44
+ ...config_0,
45
+ };
46
+ };
47
+ exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
package/dist-cjs/index.js CHANGED
@@ -292,13 +292,14 @@ module.exports = __toCommonJS(src_exports);
292
292
  var import_middleware_host_header = require("@aws-sdk/middleware-host-header");
293
293
  var import_middleware_logger = require("@aws-sdk/middleware-logger");
294
294
  var import_middleware_recursion_detection = require("@aws-sdk/middleware-recursion-detection");
295
- var import_middleware_signing = require("@aws-sdk/middleware-signing");
296
295
  var import_middleware_user_agent = require("@aws-sdk/middleware-user-agent");
297
296
  var import_config_resolver = require("@smithy/config-resolver");
297
+ var import_core = require("@smithy/core");
298
298
  var import_middleware_content_length = require("@smithy/middleware-content-length");
299
299
  var import_middleware_endpoint = require("@smithy/middleware-endpoint");
300
300
  var import_middleware_retry = require("@smithy/middleware-retry");
301
301
 
302
+ var import_httpAuthSchemeProvider = require("./auth/httpAuthSchemeProvider");
302
303
 
303
304
  // src/endpoint/EndpointParameters.ts
304
305
  var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => {
@@ -323,19 +324,62 @@ var import_runtimeConfig = require("././runtimeConfig");
323
324
  var import_region_config_resolver = require("@aws-sdk/region-config-resolver");
324
325
  var import_protocol_http = require("@smithy/protocol-http");
325
326
  var import_smithy_client = require("@smithy/smithy-client");
327
+
328
+ // src/auth/httpAuthExtensionConfiguration.ts
329
+ var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => {
330
+ const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
331
+ let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
332
+ let _credentials = runtimeConfig.credentials;
333
+ return {
334
+ setHttpAuthScheme(httpAuthScheme) {
335
+ const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
336
+ if (index === -1) {
337
+ _httpAuthSchemes.push(httpAuthScheme);
338
+ } else {
339
+ _httpAuthSchemes.splice(index, 1, httpAuthScheme);
340
+ }
341
+ },
342
+ httpAuthSchemes() {
343
+ return _httpAuthSchemes;
344
+ },
345
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
346
+ _httpAuthSchemeProvider = httpAuthSchemeProvider;
347
+ },
348
+ httpAuthSchemeProvider() {
349
+ return _httpAuthSchemeProvider;
350
+ },
351
+ setCredentials(credentials) {
352
+ _credentials = credentials;
353
+ },
354
+ credentials() {
355
+ return _credentials;
356
+ }
357
+ };
358
+ }, "getHttpAuthExtensionConfiguration");
359
+ var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name((config) => {
360
+ return {
361
+ httpAuthSchemes: config.httpAuthSchemes(),
362
+ httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
363
+ credentials: config.credentials()
364
+ };
365
+ }, "resolveHttpAuthRuntimeConfig");
366
+
367
+ // src/runtimeExtensions.ts
326
368
  var asPartial = /* @__PURE__ */ __name((t) => t, "asPartial");
327
369
  var resolveRuntimeExtensions = /* @__PURE__ */ __name((runtimeConfig, extensions) => {
328
370
  const extensionConfiguration = {
329
371
  ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
330
372
  ...asPartial((0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig)),
331
- ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig))
373
+ ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
374
+ ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
332
375
  };
333
376
  extensions.forEach((extension) => extension.configure(extensionConfiguration));
334
377
  return {
335
378
  ...runtimeConfig,
336
379
  ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
337
380
  ...(0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration),
338
- ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration)
381
+ ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
382
+ ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
339
383
  };
340
384
  }, "resolveRuntimeExtensions");
341
385
 
@@ -348,8 +392,8 @@ var _IAMClient = class _IAMClient extends import_smithy_client.Client {
348
392
  const _config_3 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_2);
349
393
  const _config_4 = (0, import_middleware_retry.resolveRetryConfig)(_config_3);
350
394
  const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
351
- const _config_6 = (0, import_middleware_signing.resolveAwsAuthConfig)(_config_5);
352
- const _config_7 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_6);
395
+ const _config_6 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_5);
396
+ const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
353
397
  const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
354
398
  super(_config_8);
355
399
  this.config = _config_8;
@@ -358,8 +402,14 @@ var _IAMClient = class _IAMClient extends import_smithy_client.Client {
358
402
  this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
359
403
  this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
360
404
  this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
361
- this.middlewareStack.use((0, import_middleware_signing.getAwsAuthPlugin)(this.config));
362
405
  this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
406
+ this.middlewareStack.use(
407
+ (0, import_core.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
408
+ httpAuthSchemeParametersProvider: this.getDefaultHttpAuthSchemeParametersProvider(),
409
+ identityProviderConfigProvider: this.getIdentityProviderConfigProvider()
410
+ })
411
+ );
412
+ this.middlewareStack.use((0, import_core.getHttpSigningPlugin)(this.config));
363
413
  }
364
414
  /**
365
415
  * Destroy underlying resources, like sockets. It's usually not necessary to do this.
@@ -369,6 +419,14 @@ var _IAMClient = class _IAMClient extends import_smithy_client.Client {
369
419
  destroy() {
370
420
  super.destroy();
371
421
  }
422
+ getDefaultHttpAuthSchemeParametersProvider() {
423
+ return import_httpAuthSchemeProvider.defaultIAMHttpAuthSchemeParametersProvider;
424
+ }
425
+ getIdentityProviderConfigProvider() {
426
+ return async (config) => new import_core.DefaultIdentityProviderConfig({
427
+ "aws.auth#sigv4": config.credentials
428
+ });
429
+ }
372
430
  };
373
431
  __name(_IAMClient, "IAMClient");
374
432
  var IAMClient = _IAMClient;
@@ -12884,7 +12942,7 @@ var IAM = _IAM;
12884
12942
  (0, import_smithy_client.createAggregatedClient)(commands, IAM);
12885
12943
 
12886
12944
  // src/pagination/GetAccountAuthorizationDetailsPaginator.ts
12887
- var import_core = require("@smithy/core");
12945
+
12888
12946
  var paginateGetAccountAuthorizationDetails = (0, import_core.createPaginator)(IAMClient, GetAccountAuthorizationDetailsCommand, "Marker", "Marker", "MaxItems");
12889
12947
 
12890
12948
  // src/pagination/GetGroupPaginator.ts
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getRuntimeConfig = void 0;
4
+ const core_1 = require("@aws-sdk/core");
4
5
  const smithy_client_1 = require("@smithy/smithy-client");
5
6
  const url_parser_1 = require("@smithy/url-parser");
6
7
  const util_base64_1 = require("@smithy/util-base64");
7
8
  const util_utf8_1 = require("@smithy/util-utf8");
9
+ const httpAuthSchemeProvider_1 = require("./auth/httpAuthSchemeProvider");
8
10
  const endpointResolver_1 = require("./endpoint/endpointResolver");
9
11
  const getRuntimeConfig = (config) => {
10
12
  return {
@@ -14,6 +16,14 @@ const getRuntimeConfig = (config) => {
14
16
  disableHostPrefix: config?.disableHostPrefix ?? false,
15
17
  endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
16
18
  extensions: config?.extensions ?? [],
19
+ httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultIAMHttpAuthSchemeProvider,
20
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
21
+ {
22
+ schemeId: "aws.auth#sigv4",
23
+ identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
24
+ signer: new core_1.AwsSdkSigV4Signer(),
25
+ },
26
+ ],
17
27
  logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
18
28
  serviceId: config?.serviceId ?? "IAM",
19
29
  urlParser: config?.urlParser ?? url_parser_1.parseUrl,
@@ -1,13 +1,14 @@
1
1
  import { getHostHeaderPlugin, resolveHostHeaderConfig, } from "@aws-sdk/middleware-host-header";
2
2
  import { getLoggerPlugin } from "@aws-sdk/middleware-logger";
3
3
  import { getRecursionDetectionPlugin } from "@aws-sdk/middleware-recursion-detection";
4
- import { getAwsAuthPlugin, resolveAwsAuthConfig, } from "@aws-sdk/middleware-signing";
5
4
  import { getUserAgentPlugin, resolveUserAgentConfig, } from "@aws-sdk/middleware-user-agent";
6
5
  import { resolveRegionConfig } from "@smithy/config-resolver";
6
+ import { DefaultIdentityProviderConfig, getHttpAuthSchemeEndpointRuleSetPlugin, getHttpSigningPlugin, } from "@smithy/core";
7
7
  import { getContentLengthPlugin } from "@smithy/middleware-content-length";
8
8
  import { resolveEndpointConfig } from "@smithy/middleware-endpoint";
9
9
  import { getRetryPlugin, resolveRetryConfig } from "@smithy/middleware-retry";
10
10
  import { Client as __Client, } from "@smithy/smithy-client";
11
+ import { defaultIAMHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from "./auth/httpAuthSchemeProvider";
11
12
  import { resolveClientEndpointParameters, } from "./endpoint/EndpointParameters";
12
13
  import { getRuntimeConfig as __getRuntimeConfig } from "./runtimeConfig";
13
14
  import { resolveRuntimeExtensions } from "./runtimeExtensions";
@@ -20,8 +21,8 @@ export class IAMClient extends __Client {
20
21
  const _config_3 = resolveEndpointConfig(_config_2);
21
22
  const _config_4 = resolveRetryConfig(_config_3);
22
23
  const _config_5 = resolveHostHeaderConfig(_config_4);
23
- const _config_6 = resolveAwsAuthConfig(_config_5);
24
- const _config_7 = resolveUserAgentConfig(_config_6);
24
+ const _config_6 = resolveUserAgentConfig(_config_5);
25
+ const _config_7 = resolveHttpAuthSchemeConfig(_config_6);
25
26
  const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []);
26
27
  super(_config_8);
27
28
  this.config = _config_8;
@@ -30,10 +31,22 @@ export class IAMClient extends __Client {
30
31
  this.middlewareStack.use(getHostHeaderPlugin(this.config));
31
32
  this.middlewareStack.use(getLoggerPlugin(this.config));
32
33
  this.middlewareStack.use(getRecursionDetectionPlugin(this.config));
33
- this.middlewareStack.use(getAwsAuthPlugin(this.config));
34
34
  this.middlewareStack.use(getUserAgentPlugin(this.config));
35
+ this.middlewareStack.use(getHttpAuthSchemeEndpointRuleSetPlugin(this.config, {
36
+ httpAuthSchemeParametersProvider: this.getDefaultHttpAuthSchemeParametersProvider(),
37
+ identityProviderConfigProvider: this.getIdentityProviderConfigProvider(),
38
+ }));
39
+ this.middlewareStack.use(getHttpSigningPlugin(this.config));
35
40
  }
36
41
  destroy() {
37
42
  super.destroy();
38
43
  }
44
+ getDefaultHttpAuthSchemeParametersProvider() {
45
+ return defaultIAMHttpAuthSchemeParametersProvider;
46
+ }
47
+ getIdentityProviderConfigProvider() {
48
+ return async (config) => new DefaultIdentityProviderConfig({
49
+ "aws.auth#sigv4": config.credentials,
50
+ });
51
+ }
39
52
  }
@@ -0,0 +1,38 @@
1
+ export const getHttpAuthExtensionConfiguration = (runtimeConfig) => {
2
+ const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
3
+ let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
4
+ let _credentials = runtimeConfig.credentials;
5
+ return {
6
+ setHttpAuthScheme(httpAuthScheme) {
7
+ const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
8
+ if (index === -1) {
9
+ _httpAuthSchemes.push(httpAuthScheme);
10
+ }
11
+ else {
12
+ _httpAuthSchemes.splice(index, 1, httpAuthScheme);
13
+ }
14
+ },
15
+ httpAuthSchemes() {
16
+ return _httpAuthSchemes;
17
+ },
18
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
19
+ _httpAuthSchemeProvider = httpAuthSchemeProvider;
20
+ },
21
+ httpAuthSchemeProvider() {
22
+ return _httpAuthSchemeProvider;
23
+ },
24
+ setCredentials(credentials) {
25
+ _credentials = credentials;
26
+ },
27
+ credentials() {
28
+ return _credentials;
29
+ },
30
+ };
31
+ };
32
+ export const resolveHttpAuthRuntimeConfig = (config) => {
33
+ return {
34
+ httpAuthSchemes: config.httpAuthSchemes(),
35
+ httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
36
+ credentials: config.credentials(),
37
+ };
38
+ };
@@ -0,0 +1,41 @@
1
+ import { resolveAwsSdkSigV4Config, } from "@aws-sdk/core";
2
+ import { getSmithyContext, normalizeProvider } from "@smithy/util-middleware";
3
+ export const defaultIAMHttpAuthSchemeParametersProvider = async (config, context, input) => {
4
+ return {
5
+ operation: getSmithyContext(context).operation,
6
+ region: (await normalizeProvider(config.region)()) ||
7
+ (() => {
8
+ throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
9
+ })(),
10
+ };
11
+ };
12
+ function createAwsAuthSigv4HttpAuthOption(authParameters) {
13
+ return {
14
+ schemeId: "aws.auth#sigv4",
15
+ signingProperties: {
16
+ name: "iam",
17
+ region: authParameters.region,
18
+ },
19
+ propertiesExtractor: (config, context) => ({
20
+ signingProperties: {
21
+ config,
22
+ context,
23
+ },
24
+ }),
25
+ };
26
+ }
27
+ export const defaultIAMHttpAuthSchemeProvider = (authParameters) => {
28
+ const options = [];
29
+ switch (authParameters.operation) {
30
+ default: {
31
+ options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
32
+ }
33
+ }
34
+ return options;
35
+ };
36
+ export const resolveHttpAuthSchemeConfig = (config) => {
37
+ const config_0 = resolveAwsSdkSigV4Config(config);
38
+ return {
39
+ ...config_0,
40
+ };
41
+ };
@@ -1,7 +1,9 @@
1
+ import { AwsSdkSigV4Signer } from "@aws-sdk/core";
1
2
  import { NoOpLogger } from "@smithy/smithy-client";
2
3
  import { parseUrl } from "@smithy/url-parser";
3
4
  import { fromBase64, toBase64 } from "@smithy/util-base64";
4
5
  import { fromUtf8, toUtf8 } from "@smithy/util-utf8";
6
+ import { defaultIAMHttpAuthSchemeProvider } from "./auth/httpAuthSchemeProvider";
5
7
  import { defaultEndpointResolver } from "./endpoint/endpointResolver";
6
8
  export const getRuntimeConfig = (config) => {
7
9
  return {
@@ -11,6 +13,14 @@ export const getRuntimeConfig = (config) => {
11
13
  disableHostPrefix: config?.disableHostPrefix ?? false,
12
14
  endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,
13
15
  extensions: config?.extensions ?? [],
16
+ httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? defaultIAMHttpAuthSchemeProvider,
17
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
18
+ {
19
+ schemeId: "aws.auth#sigv4",
20
+ identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
21
+ signer: new AwsSdkSigV4Signer(),
22
+ },
23
+ ],
14
24
  logger: config?.logger ?? new NoOpLogger(),
15
25
  serviceId: config?.serviceId ?? "IAM",
16
26
  urlParser: config?.urlParser ?? parseUrl,
@@ -1,12 +1,14 @@
1
1
  import { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from "@aws-sdk/region-config-resolver";
2
2
  import { getHttpHandlerExtensionConfiguration, resolveHttpHandlerRuntimeConfig } from "@smithy/protocol-http";
3
3
  import { getDefaultExtensionConfiguration, resolveDefaultRuntimeConfig } from "@smithy/smithy-client";
4
+ import { getHttpAuthExtensionConfiguration, resolveHttpAuthRuntimeConfig } from "./auth/httpAuthExtensionConfiguration";
4
5
  const asPartial = (t) => t;
5
6
  export const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
6
7
  const extensionConfiguration = {
7
8
  ...asPartial(getAwsRegionExtensionConfiguration(runtimeConfig)),
8
9
  ...asPartial(getDefaultExtensionConfiguration(runtimeConfig)),
9
10
  ...asPartial(getHttpHandlerExtensionConfiguration(runtimeConfig)),
11
+ ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)),
10
12
  };
11
13
  extensions.forEach((extension) => extension.configure(extensionConfiguration));
12
14
  return {
@@ -14,5 +16,6 @@ export const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
14
16
  ...resolveAwsRegionExtensionConfiguration(extensionConfiguration),
15
17
  ...resolveDefaultRuntimeConfig(extensionConfiguration),
16
18
  ...resolveHttpHandlerRuntimeConfig(extensionConfiguration),
19
+ ...resolveHttpAuthRuntimeConfig(extensionConfiguration),
17
20
  };
18
21
  };
@@ -1,13 +1,12 @@
1
1
  import { HostHeaderInputConfig, HostHeaderResolvedConfig } from "@aws-sdk/middleware-host-header";
2
- import { AwsAuthInputConfig, AwsAuthResolvedConfig } from "@aws-sdk/middleware-signing";
3
2
  import { UserAgentInputConfig, UserAgentResolvedConfig } from "@aws-sdk/middleware-user-agent";
4
- import { Credentials as __Credentials } from "@aws-sdk/types";
5
3
  import { RegionInputConfig, RegionResolvedConfig } from "@smithy/config-resolver";
6
4
  import { EndpointInputConfig, EndpointResolvedConfig } from "@smithy/middleware-endpoint";
7
5
  import { RetryInputConfig, RetryResolvedConfig } from "@smithy/middleware-retry";
8
6
  import { HttpHandler as __HttpHandler } from "@smithy/protocol-http";
9
7
  import { Client as __Client, DefaultsMode as __DefaultsMode, SmithyConfiguration as __SmithyConfiguration, SmithyResolvedConfiguration as __SmithyResolvedConfiguration } from "@smithy/smithy-client";
10
- import { BodyLengthCalculator as __BodyLengthCalculator, CheckOptionalClientConfig as __CheckOptionalClientConfig, ChecksumConstructor as __ChecksumConstructor, Decoder as __Decoder, Encoder as __Encoder, HashConstructor as __HashConstructor, HttpHandlerOptions as __HttpHandlerOptions, Logger as __Logger, Provider as __Provider, Provider, StreamCollector as __StreamCollector, UrlParser as __UrlParser, UserAgent as __UserAgent } from "@smithy/types";
8
+ import { AwsCredentialIdentityProvider, BodyLengthCalculator as __BodyLengthCalculator, CheckOptionalClientConfig as __CheckOptionalClientConfig, ChecksumConstructor as __ChecksumConstructor, Decoder as __Decoder, Encoder as __Encoder, HashConstructor as __HashConstructor, HttpHandlerOptions as __HttpHandlerOptions, Logger as __Logger, Provider as __Provider, Provider, StreamCollector as __StreamCollector, UrlParser as __UrlParser, UserAgent as __UserAgent } from "@smithy/types";
9
+ import { HttpAuthSchemeInputConfig, HttpAuthSchemeResolvedConfig } from "./auth/httpAuthSchemeProvider";
11
10
  import { AddClientIDToOpenIDConnectProviderCommandInput, AddClientIDToOpenIDConnectProviderCommandOutput } from "./commands/AddClientIDToOpenIDConnectProviderCommand";
12
11
  import { AddRoleToInstanceProfileCommandInput, AddRoleToInstanceProfileCommandOutput } from "./commands/AddRoleToInstanceProfileCommand";
13
12
  import { AddUserToGroupCommandInput, AddUserToGroupCommandOutput } from "./commands/AddUserToGroupCommand";
@@ -250,20 +249,21 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
250
249
  * Enables FIPS compatible endpoints.
251
250
  */
252
251
  useFipsEndpoint?: boolean | __Provider<boolean>;
252
+ /**
253
+ * The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header
254
+ * @internal
255
+ */
256
+ defaultUserAgentProvider?: Provider<__UserAgent>;
253
257
  /**
254
258
  * The AWS region to which this client will send requests
255
259
  */
256
260
  region?: string | __Provider<string>;
257
261
  /**
258
262
  * Default credentials provider; Not available in browser runtime.
263
+ * @deprecated
259
264
  * @internal
260
265
  */
261
- credentialDefaultProvider?: (input: any) => __Provider<__Credentials>;
262
- /**
263
- * The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header
264
- * @internal
265
- */
266
- defaultUserAgentProvider?: Provider<__UserAgent>;
266
+ credentialDefaultProvider?: (input: any) => AwsCredentialIdentityProvider;
267
267
  /**
268
268
  * Value for how many times a request will be made at most in case of retry.
269
269
  */
@@ -290,7 +290,7 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
290
290
  /**
291
291
  * @public
292
292
  */
293
- export type IAMClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & RegionInputConfig & EndpointInputConfig<EndpointParameters> & RetryInputConfig & HostHeaderInputConfig & AwsAuthInputConfig & UserAgentInputConfig & ClientInputEndpointParameters;
293
+ export type IAMClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & RegionInputConfig & EndpointInputConfig<EndpointParameters> & RetryInputConfig & HostHeaderInputConfig & UserAgentInputConfig & HttpAuthSchemeInputConfig & ClientInputEndpointParameters;
294
294
  /**
295
295
  * @public
296
296
  *
@@ -301,7 +301,7 @@ export interface IAMClientConfig extends IAMClientConfigType {
301
301
  /**
302
302
  * @public
303
303
  */
304
- export type IAMClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & AwsAuthResolvedConfig & UserAgentResolvedConfig & ClientResolvedEndpointParameters;
304
+ export type IAMClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & UserAgentResolvedConfig & HttpAuthSchemeResolvedConfig & ClientResolvedEndpointParameters;
305
305
  /**
306
306
  * @public
307
307
  *
@@ -329,4 +329,6 @@ export declare class IAMClient extends __Client<__HttpHandlerOptions, ServiceInp
329
329
  * Otherwise, sockets might stay open for quite a long time before the server terminates them.
330
330
  */
331
331
  destroy(): void;
332
+ private getDefaultHttpAuthSchemeParametersProvider;
333
+ private getIdentityProviderConfigProvider;
332
334
  }
@@ -0,0 +1,29 @@
1
+ import { AwsCredentialIdentity, AwsCredentialIdentityProvider, HttpAuthScheme } from "@smithy/types";
2
+ import { IAMHttpAuthSchemeProvider } from "./httpAuthSchemeProvider";
3
+ /**
4
+ * @internal
5
+ */
6
+ export interface HttpAuthExtensionConfiguration {
7
+ setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void;
8
+ httpAuthSchemes(): HttpAuthScheme[];
9
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider: IAMHttpAuthSchemeProvider): void;
10
+ httpAuthSchemeProvider(): IAMHttpAuthSchemeProvider;
11
+ setCredentials(credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider): void;
12
+ credentials(): AwsCredentialIdentity | AwsCredentialIdentityProvider | undefined;
13
+ }
14
+ /**
15
+ * @internal
16
+ */
17
+ export type HttpAuthRuntimeConfig = Partial<{
18
+ httpAuthSchemes: HttpAuthScheme[];
19
+ httpAuthSchemeProvider: IAMHttpAuthSchemeProvider;
20
+ credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider;
21
+ }>;
22
+ /**
23
+ * @internal
24
+ */
25
+ export declare const getHttpAuthExtensionConfiguration: (runtimeConfig: HttpAuthRuntimeConfig) => HttpAuthExtensionConfiguration;
26
+ /**
27
+ * @internal
28
+ */
29
+ export declare const resolveHttpAuthRuntimeConfig: (config: HttpAuthExtensionConfiguration) => HttpAuthRuntimeConfig;
@@ -0,0 +1,61 @@
1
+ import { AwsSdkSigV4AuthInputConfig, AwsSdkSigV4AuthResolvedConfig, AwsSdkSigV4PreviouslyResolved } from "@aws-sdk/core";
2
+ import { HandlerExecutionContext, HttpAuthScheme, HttpAuthSchemeParameters, HttpAuthSchemeParametersProvider, HttpAuthSchemeProvider } from "@smithy/types";
3
+ import { IAMClientResolvedConfig } from "../IAMClient";
4
+ /**
5
+ * @internal
6
+ */
7
+ export interface IAMHttpAuthSchemeParameters extends HttpAuthSchemeParameters {
8
+ region?: string;
9
+ }
10
+ /**
11
+ * @internal
12
+ */
13
+ export interface IAMHttpAuthSchemeParametersProvider extends HttpAuthSchemeParametersProvider<IAMClientResolvedConfig, HandlerExecutionContext, IAMHttpAuthSchemeParameters, object> {
14
+ }
15
+ /**
16
+ * @internal
17
+ */
18
+ export declare const defaultIAMHttpAuthSchemeParametersProvider: (config: IAMClientResolvedConfig, context: HandlerExecutionContext, input: object) => Promise<IAMHttpAuthSchemeParameters>;
19
+ /**
20
+ * @internal
21
+ */
22
+ export interface IAMHttpAuthSchemeProvider extends HttpAuthSchemeProvider<IAMHttpAuthSchemeParameters> {
23
+ }
24
+ /**
25
+ * @internal
26
+ */
27
+ export declare const defaultIAMHttpAuthSchemeProvider: IAMHttpAuthSchemeProvider;
28
+ /**
29
+ * @internal
30
+ */
31
+ export interface HttpAuthSchemeInputConfig extends AwsSdkSigV4AuthInputConfig {
32
+ /**
33
+ * experimentalIdentityAndAuth: Configuration of HttpAuthSchemes for a client which provides default identity providers and signers per auth scheme.
34
+ * @internal
35
+ */
36
+ httpAuthSchemes?: HttpAuthScheme[];
37
+ /**
38
+ * experimentalIdentityAndAuth: Configuration of an HttpAuthSchemeProvider for a client which resolves which HttpAuthScheme to use.
39
+ * @internal
40
+ */
41
+ httpAuthSchemeProvider?: IAMHttpAuthSchemeProvider;
42
+ }
43
+ /**
44
+ * @internal
45
+ */
46
+ export interface HttpAuthSchemeResolvedConfig extends AwsSdkSigV4AuthResolvedConfig {
47
+ /**
48
+ * experimentalIdentityAndAuth: Configuration of HttpAuthSchemes for a client which provides default identity providers and signers per auth scheme.
49
+ * @internal
50
+ */
51
+ readonly httpAuthSchemes: HttpAuthScheme[];
52
+ /**
53
+ * experimentalIdentityAndAuth: Configuration of an HttpAuthSchemeProvider for a client which resolves which HttpAuthScheme to use.
54
+ * @internal
55
+ */
56
+ readonly httpAuthSchemeProvider: IAMHttpAuthSchemeProvider;
57
+ }
58
+ /**
59
+ * @internal
60
+ */
61
+ export declare const resolveHttpAuthSchemeConfig: <T>(config: T & HttpAuthSchemeInputConfig & AwsSdkSigV4PreviouslyResolved) => T & HttpAuthSchemeResolvedConfig;
@@ -1,8 +1,9 @@
1
1
  import { AwsRegionExtensionConfiguration } from "@aws-sdk/types";
2
2
  import { HttpHandlerExtensionConfiguration } from "@smithy/protocol-http";
3
3
  import { DefaultExtensionConfiguration } from "@smithy/types";
4
+ import { HttpAuthExtensionConfiguration } from "./auth/httpAuthExtensionConfiguration";
4
5
  /**
5
6
  * @internal
6
7
  */
7
- export interface IAMExtensionConfiguration extends HttpHandlerExtensionConfiguration, DefaultExtensionConfiguration, AwsRegionExtensionConfiguration {
8
+ export interface IAMExtensionConfiguration extends HttpHandlerExtensionConfiguration, DefaultExtensionConfiguration, AwsRegionExtensionConfiguration, HttpAuthExtensionConfiguration {
8
9
  }
@@ -7,7 +7,7 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
7
7
  runtime: string;
8
8
  defaultsMode: import("@smithy/types").Provider<import("@smithy/smithy-client").ResolvedDefaultsMode>;
9
9
  bodyLengthChecker: import("@smithy/types").BodyLengthCalculator;
10
- credentialDefaultProvider: (input: any) => import("@smithy/types").Provider<import("@aws-sdk/types").Credentials>;
10
+ credentialDefaultProvider: (input: any) => import("@smithy/types").AwsCredentialIdentityProvider;
11
11
  defaultUserAgentProvider: import("@smithy/types").Provider<import("@smithy/types").UserAgent>;
12
12
  maxAttempts: number | import("@smithy/types").Provider<number>;
13
13
  region: string | import("@smithy/types").Provider<any>;
@@ -36,11 +36,13 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
36
36
  }) => import("@smithy/types").EndpointV2;
37
37
  tls?: boolean | undefined;
38
38
  retryStrategy?: import("@smithy/types").RetryStrategy | import("@smithy/types").RetryStrategyV2 | undefined;
39
- credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").Provider<import("@smithy/types").AwsCredentialIdentity> | undefined;
39
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
40
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
41
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").IAMHttpAuthSchemeProvider;
42
+ credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").AwsCredentialIdentityProvider | undefined;
40
43
  signer?: import("@smithy/types").RequestSigner | ((authScheme?: import("@smithy/types").AuthScheme | undefined) => Promise<import("@smithy/types").RequestSigner>) | undefined;
41
44
  signingEscapePath?: boolean | undefined;
42
45
  systemClockOffset?: number | undefined;
43
46
  signingRegion?: string | undefined;
44
47
  signerConstructor?: (new (options: import("@smithy/signature-v4").SignatureV4Init & import("@smithy/signature-v4").SignatureV4CryptoInit) => import("@smithy/types").RequestSigner) | undefined;
45
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
46
48
  };
@@ -36,11 +36,13 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
36
36
  }) => import("@smithy/types").EndpointV2;
37
37
  tls?: boolean | undefined;
38
38
  retryStrategy?: import("@smithy/types").RetryStrategy | import("@smithy/types").RetryStrategyV2 | undefined;
39
- credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").Provider<import("@smithy/types").AwsCredentialIdentity> | undefined;
39
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
40
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
41
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").IAMHttpAuthSchemeProvider;
42
+ credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").AwsCredentialIdentityProvider | undefined;
40
43
  signer?: import("@smithy/types").RequestSigner | ((authScheme?: import("@smithy/types").AuthScheme | undefined) => Promise<import("@smithy/types").RequestSigner>) | undefined;
41
44
  signingEscapePath?: boolean | undefined;
42
45
  systemClockOffset?: number | undefined;
43
46
  signingRegion?: string | undefined;
44
47
  signerConstructor?: (new (options: import("@smithy/signature-v4").SignatureV4Init & import("@smithy/signature-v4").SignatureV4CryptoInit) => import("@smithy/types").RequestSigner) | undefined;
45
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
46
48
  };
@@ -21,9 +21,9 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
21
21
  serviceId: string;
22
22
  useDualstackEndpoint: boolean | import("@smithy/types").Provider<boolean>;
23
23
  useFipsEndpoint: boolean | import("@smithy/types").Provider<boolean>;
24
- region: string | import("@smithy/types").Provider<any>;
25
- credentialDefaultProvider: (input: any) => import("@smithy/types").Provider<import("@aws-sdk/types").Credentials>;
26
24
  defaultUserAgentProvider: import("@smithy/types").Provider<import("@smithy/types").UserAgent>;
25
+ region: string | import("@smithy/types").Provider<any>;
26
+ credentialDefaultProvider: (input: any) => import("@smithy/types").AwsCredentialIdentityProvider;
27
27
  maxAttempts: number | import("@smithy/types").Provider<number>;
28
28
  retryMode: string | import("@smithy/types").Provider<string>;
29
29
  logger: import("@smithy/types").Logger;
@@ -35,11 +35,13 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
35
35
  }) => import("@smithy/types").EndpointV2;
36
36
  tls?: boolean | undefined;
37
37
  retryStrategy?: import("@smithy/types").RetryStrategy | import("@smithy/types").RetryStrategyV2 | undefined;
38
- credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").Provider<import("@smithy/types").AwsCredentialIdentity> | undefined;
38
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
39
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
40
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").IAMHttpAuthSchemeProvider;
41
+ credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").AwsCredentialIdentityProvider | undefined;
39
42
  signer?: import("@smithy/types").RequestSigner | ((authScheme?: import("@smithy/types").AuthScheme | undefined) => Promise<import("@smithy/types").RequestSigner>) | undefined;
40
43
  signingEscapePath?: boolean | undefined;
41
44
  systemClockOffset?: number | undefined;
42
45
  signingRegion?: string | undefined;
43
46
  signerConstructor?: (new (options: import("@smithy/signature-v4").SignatureV4Init & import("@smithy/signature-v4").SignatureV4CryptoInit) => import("@smithy/types").RequestSigner) | undefined;
44
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
45
47
  };
@@ -11,6 +11,8 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
11
11
  logger?: import("@smithy/types").Logger | undefined;
12
12
  }) => import("@smithy/types").EndpointV2;
13
13
  extensions: import("./runtimeExtensions").RuntimeExtension[];
14
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").IAMHttpAuthSchemeProvider;
15
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
14
16
  logger: import("@smithy/types").Logger;
15
17
  serviceId: string;
16
18
  urlParser: import("@smithy/types").UrlParser;
@@ -2,15 +2,10 @@ import {
2
2
  HostHeaderInputConfig,
3
3
  HostHeaderResolvedConfig,
4
4
  } from "@aws-sdk/middleware-host-header";
5
- import {
6
- AwsAuthInputConfig,
7
- AwsAuthResolvedConfig,
8
- } from "@aws-sdk/middleware-signing";
9
5
  import {
10
6
  UserAgentInputConfig,
11
7
  UserAgentResolvedConfig,
12
8
  } from "@aws-sdk/middleware-user-agent";
13
- import { Credentials as __Credentials } from "@aws-sdk/types";
14
9
  import {
15
10
  RegionInputConfig,
16
11
  RegionResolvedConfig,
@@ -31,6 +26,7 @@ import {
31
26
  SmithyResolvedConfiguration as __SmithyResolvedConfiguration,
32
27
  } from "@smithy/smithy-client";
33
28
  import {
29
+ AwsCredentialIdentityProvider,
34
30
  BodyLengthCalculator as __BodyLengthCalculator,
35
31
  CheckOptionalClientConfig as __CheckOptionalClientConfig,
36
32
  ChecksumConstructor as __ChecksumConstructor,
@@ -45,6 +41,10 @@ import {
45
41
  UrlParser as __UrlParser,
46
42
  UserAgent as __UserAgent,
47
43
  } from "@smithy/types";
44
+ import {
45
+ HttpAuthSchemeInputConfig,
46
+ HttpAuthSchemeResolvedConfig,
47
+ } from "./auth/httpAuthSchemeProvider";
48
48
  import {
49
49
  AddClientIDToOpenIDConnectProviderCommandInput,
50
50
  AddClientIDToOpenIDConnectProviderCommandOutput,
@@ -1024,9 +1024,9 @@ export interface ClientDefaults
1024
1024
  serviceId?: string;
1025
1025
  useDualstackEndpoint?: boolean | __Provider<boolean>;
1026
1026
  useFipsEndpoint?: boolean | __Provider<boolean>;
1027
- region?: string | __Provider<string>;
1028
- credentialDefaultProvider?: (input: any) => __Provider<__Credentials>;
1029
1027
  defaultUserAgentProvider?: Provider<__UserAgent>;
1028
+ region?: string | __Provider<string>;
1029
+ credentialDefaultProvider?: (input: any) => AwsCredentialIdentityProvider;
1030
1030
  maxAttempts?: number | __Provider<number>;
1031
1031
  retryMode?: string | __Provider<string>;
1032
1032
  logger?: __Logger;
@@ -1041,8 +1041,8 @@ export type IAMClientConfigType = Partial<
1041
1041
  EndpointInputConfig<EndpointParameters> &
1042
1042
  RetryInputConfig &
1043
1043
  HostHeaderInputConfig &
1044
- AwsAuthInputConfig &
1045
1044
  UserAgentInputConfig &
1045
+ HttpAuthSchemeInputConfig &
1046
1046
  ClientInputEndpointParameters;
1047
1047
  export interface IAMClientConfig extends IAMClientConfigType {}
1048
1048
  export type IAMClientResolvedConfigType =
@@ -1053,8 +1053,8 @@ export type IAMClientResolvedConfigType =
1053
1053
  EndpointResolvedConfig<EndpointParameters> &
1054
1054
  RetryResolvedConfig &
1055
1055
  HostHeaderResolvedConfig &
1056
- AwsAuthResolvedConfig &
1057
1056
  UserAgentResolvedConfig &
1057
+ HttpAuthSchemeResolvedConfig &
1058
1058
  ClientResolvedEndpointParameters;
1059
1059
  export interface IAMClientResolvedConfig extends IAMClientResolvedConfigType {}
1060
1060
  export declare class IAMClient extends __Client<
@@ -1066,4 +1066,6 @@ export declare class IAMClient extends __Client<
1066
1066
  readonly config: IAMClientResolvedConfig;
1067
1067
  constructor(...[configuration]: __CheckOptionalClientConfig<IAMClientConfig>);
1068
1068
  destroy(): void;
1069
+ private getDefaultHttpAuthSchemeParametersProvider;
1070
+ private getIdentityProviderConfigProvider;
1069
1071
  }
@@ -0,0 +1,32 @@
1
+ import {
2
+ AwsCredentialIdentity,
3
+ AwsCredentialIdentityProvider,
4
+ HttpAuthScheme,
5
+ } from "@smithy/types";
6
+ import { IAMHttpAuthSchemeProvider } from "./httpAuthSchemeProvider";
7
+ export interface HttpAuthExtensionConfiguration {
8
+ setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void;
9
+ httpAuthSchemes(): HttpAuthScheme[];
10
+ setHttpAuthSchemeProvider(
11
+ httpAuthSchemeProvider: IAMHttpAuthSchemeProvider
12
+ ): void;
13
+ httpAuthSchemeProvider(): IAMHttpAuthSchemeProvider;
14
+ setCredentials(
15
+ credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider
16
+ ): void;
17
+ credentials():
18
+ | AwsCredentialIdentity
19
+ | AwsCredentialIdentityProvider
20
+ | undefined;
21
+ }
22
+ export type HttpAuthRuntimeConfig = Partial<{
23
+ httpAuthSchemes: HttpAuthScheme[];
24
+ httpAuthSchemeProvider: IAMHttpAuthSchemeProvider;
25
+ credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider;
26
+ }>;
27
+ export declare const getHttpAuthExtensionConfiguration: (
28
+ runtimeConfig: HttpAuthRuntimeConfig
29
+ ) => HttpAuthExtensionConfiguration;
30
+ export declare const resolveHttpAuthRuntimeConfig: (
31
+ config: HttpAuthExtensionConfiguration
32
+ ) => HttpAuthRuntimeConfig;
@@ -0,0 +1,43 @@
1
+ import {
2
+ AwsSdkSigV4AuthInputConfig,
3
+ AwsSdkSigV4AuthResolvedConfig,
4
+ AwsSdkSigV4PreviouslyResolved,
5
+ } from "@aws-sdk/core";
6
+ import {
7
+ HandlerExecutionContext,
8
+ HttpAuthScheme,
9
+ HttpAuthSchemeParameters,
10
+ HttpAuthSchemeParametersProvider,
11
+ HttpAuthSchemeProvider,
12
+ } from "@smithy/types";
13
+ import { IAMClientResolvedConfig } from "../IAMClient";
14
+ export interface IAMHttpAuthSchemeParameters extends HttpAuthSchemeParameters {
15
+ region?: string;
16
+ }
17
+ export interface IAMHttpAuthSchemeParametersProvider
18
+ extends HttpAuthSchemeParametersProvider<
19
+ IAMClientResolvedConfig,
20
+ HandlerExecutionContext,
21
+ IAMHttpAuthSchemeParameters,
22
+ object
23
+ > {}
24
+ export declare const defaultIAMHttpAuthSchemeParametersProvider: (
25
+ config: IAMClientResolvedConfig,
26
+ context: HandlerExecutionContext,
27
+ input: object
28
+ ) => Promise<IAMHttpAuthSchemeParameters>;
29
+ export interface IAMHttpAuthSchemeProvider
30
+ extends HttpAuthSchemeProvider<IAMHttpAuthSchemeParameters> {}
31
+ export declare const defaultIAMHttpAuthSchemeProvider: IAMHttpAuthSchemeProvider;
32
+ export interface HttpAuthSchemeInputConfig extends AwsSdkSigV4AuthInputConfig {
33
+ httpAuthSchemes?: HttpAuthScheme[];
34
+ httpAuthSchemeProvider?: IAMHttpAuthSchemeProvider;
35
+ }
36
+ export interface HttpAuthSchemeResolvedConfig
37
+ extends AwsSdkSigV4AuthResolvedConfig {
38
+ readonly httpAuthSchemes: HttpAuthScheme[];
39
+ readonly httpAuthSchemeProvider: IAMHttpAuthSchemeProvider;
40
+ }
41
+ export declare const resolveHttpAuthSchemeConfig: <T>(
42
+ config: T & HttpAuthSchemeInputConfig & AwsSdkSigV4PreviouslyResolved
43
+ ) => T & HttpAuthSchemeResolvedConfig;
@@ -1,7 +1,9 @@
1
1
  import { AwsRegionExtensionConfiguration } from "@aws-sdk/types";
2
2
  import { HttpHandlerExtensionConfiguration } from "@smithy/protocol-http";
3
3
  import { DefaultExtensionConfiguration } from "@smithy/types";
4
+ import { HttpAuthExtensionConfiguration } from "./auth/httpAuthExtensionConfiguration";
4
5
  export interface IAMExtensionConfiguration
5
6
  extends HttpHandlerExtensionConfiguration,
6
7
  DefaultExtensionConfiguration,
7
- AwsRegionExtensionConfiguration {}
8
+ AwsRegionExtensionConfiguration,
9
+ HttpAuthExtensionConfiguration {}
@@ -8,7 +8,7 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
8
8
  bodyLengthChecker: import("@smithy/types").BodyLengthCalculator;
9
9
  credentialDefaultProvider: (
10
10
  input: any
11
- ) => import("@smithy/types").Provider<import("@aws-sdk/types").Credentials>;
11
+ ) => import("@smithy/types").AwsCredentialIdentityProvider;
12
12
  defaultUserAgentProvider: import("@smithy/types").Provider<
13
13
  import("@smithy/types").UserAgent
14
14
  >;
@@ -72,11 +72,12 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
72
72
  | import("@smithy/types").RetryStrategy
73
73
  | import("@smithy/types").RetryStrategyV2
74
74
  | undefined;
75
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
76
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
77
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").IAMHttpAuthSchemeProvider;
75
78
  credentials?:
76
79
  | import("@smithy/types").AwsCredentialIdentity
77
- | import("@smithy/types").Provider<
78
- import("@smithy/types").AwsCredentialIdentity
79
- >
80
+ | import("@smithy/types").AwsCredentialIdentityProvider
80
81
  | undefined;
81
82
  signer?:
82
83
  | import("@smithy/types").RequestSigner
@@ -93,5 +94,4 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
93
94
  import("@smithy/signature-v4").SignatureV4CryptoInit
94
95
  ) => import("@smithy/types").RequestSigner)
95
96
  | undefined;
96
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
97
97
  };
@@ -76,11 +76,12 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
76
76
  | import("@smithy/types").RetryStrategy
77
77
  | import("@smithy/types").RetryStrategyV2
78
78
  | undefined;
79
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
80
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
81
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").IAMHttpAuthSchemeProvider;
79
82
  credentials?:
80
83
  | import("@smithy/types").AwsCredentialIdentity
81
- | import("@smithy/types").Provider<
82
- import("@smithy/types").AwsCredentialIdentity
83
- >
84
+ | import("@smithy/types").AwsCredentialIdentityProvider
84
85
  | undefined;
85
86
  signer?:
86
87
  | import("@smithy/types").RequestSigner
@@ -97,5 +98,4 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
97
98
  import("@smithy/signature-v4").SignatureV4CryptoInit
98
99
  ) => import("@smithy/types").RequestSigner)
99
100
  | undefined;
100
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
101
101
  };
@@ -29,13 +29,13 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
29
29
  serviceId: string;
30
30
  useDualstackEndpoint: boolean | import("@smithy/types").Provider<boolean>;
31
31
  useFipsEndpoint: boolean | import("@smithy/types").Provider<boolean>;
32
- region: string | import("@smithy/types").Provider<any>;
33
- credentialDefaultProvider: (
34
- input: any
35
- ) => import("@smithy/types").Provider<import("@aws-sdk/types").Credentials>;
36
32
  defaultUserAgentProvider: import("@smithy/types").Provider<
37
33
  import("@smithy/types").UserAgent
38
34
  >;
35
+ region: string | import("@smithy/types").Provider<any>;
36
+ credentialDefaultProvider: (
37
+ input: any
38
+ ) => import("@smithy/types").AwsCredentialIdentityProvider;
39
39
  maxAttempts: number | import("@smithy/types").Provider<number>;
40
40
  retryMode: string | import("@smithy/types").Provider<string>;
41
41
  logger: import("@smithy/types").Logger;
@@ -63,11 +63,12 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
63
63
  | import("@smithy/types").RetryStrategy
64
64
  | import("@smithy/types").RetryStrategyV2
65
65
  | undefined;
66
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
67
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
68
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").IAMHttpAuthSchemeProvider;
66
69
  credentials?:
67
70
  | import("@smithy/types").AwsCredentialIdentity
68
- | import("@smithy/types").Provider<
69
- import("@smithy/types").AwsCredentialIdentity
70
- >
71
+ | import("@smithy/types").AwsCredentialIdentityProvider
71
72
  | undefined;
72
73
  signer?:
73
74
  | import("@smithy/types").RequestSigner
@@ -84,5 +85,4 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
84
85
  import("@smithy/signature-v4").SignatureV4CryptoInit
85
86
  ) => import("@smithy/types").RequestSigner)
86
87
  | undefined;
87
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
88
88
  };
@@ -11,6 +11,8 @@ export declare const getRuntimeConfig: (config: IAMClientConfig) => {
11
11
  }
12
12
  ) => import("@smithy/types").EndpointV2;
13
13
  extensions: import("./runtimeExtensions").RuntimeExtension[];
14
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").IAMHttpAuthSchemeProvider;
15
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
14
16
  logger: import("@smithy/types").Logger;
15
17
  serviceId: string;
16
18
  urlParser: import("@smithy/types").UrlParser;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-iam",
3
3
  "description": "AWS SDK for JavaScript Iam Client for Node.js, Browser and React Native",
4
- "version": "3.511.0",
4
+ "version": "3.514.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "node ../../scripts/compilation/inline client-iam",
@@ -20,13 +20,12 @@
20
20
  "dependencies": {
21
21
  "@aws-crypto/sha256-browser": "3.0.0",
22
22
  "@aws-crypto/sha256-js": "3.0.0",
23
- "@aws-sdk/client-sts": "3.511.0",
24
- "@aws-sdk/core": "3.511.0",
25
- "@aws-sdk/credential-provider-node": "3.511.0",
23
+ "@aws-sdk/client-sts": "3.513.0",
24
+ "@aws-sdk/core": "3.513.0",
25
+ "@aws-sdk/credential-provider-node": "3.514.0",
26
26
  "@aws-sdk/middleware-host-header": "3.511.0",
27
27
  "@aws-sdk/middleware-logger": "3.511.0",
28
28
  "@aws-sdk/middleware-recursion-detection": "3.511.0",
29
- "@aws-sdk/middleware-signing": "3.511.0",
30
29
  "@aws-sdk/middleware-user-agent": "3.511.0",
31
30
  "@aws-sdk/region-config-resolver": "3.511.0",
32
31
  "@aws-sdk/types": "3.511.0",
@@ -34,7 +33,7 @@
34
33
  "@aws-sdk/util-user-agent-browser": "3.511.0",
35
34
  "@aws-sdk/util-user-agent-node": "3.511.0",
36
35
  "@smithy/config-resolver": "^2.1.1",
37
- "@smithy/core": "^1.3.1",
36
+ "@smithy/core": "^1.3.2",
38
37
  "@smithy/fetch-http-handler": "^2.4.1",
39
38
  "@smithy/hash-node": "^2.1.1",
40
39
  "@smithy/invalid-dependency": "^2.1.1",
@@ -53,8 +52,9 @@
53
52
  "@smithy/util-body-length-browser": "^2.1.1",
54
53
  "@smithy/util-body-length-node": "^2.2.1",
55
54
  "@smithy/util-defaults-mode-browser": "^2.1.1",
56
- "@smithy/util-defaults-mode-node": "^2.1.1",
55
+ "@smithy/util-defaults-mode-node": "^2.2.0",
57
56
  "@smithy/util-endpoints": "^1.1.1",
57
+ "@smithy/util-middleware": "^2.1.1",
58
58
  "@smithy/util-retry": "^2.1.1",
59
59
  "@smithy/util-utf8": "^2.1.1",
60
60
  "@smithy/util-waiter": "^2.1.1",