@aws-sdk/client-redshift-data 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.defaultRedshiftDataHttpAuthSchemeProvider = exports.defaultRedshiftDataHttpAuthSchemeParametersProvider = void 0;
4
+ const core_1 = require("@aws-sdk/core");
5
+ const util_middleware_1 = require("@smithy/util-middleware");
6
+ const defaultRedshiftDataHttpAuthSchemeParametersProvider = 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.defaultRedshiftDataHttpAuthSchemeParametersProvider = defaultRedshiftDataHttpAuthSchemeParametersProvider;
16
+ function createAwsAuthSigv4HttpAuthOption(authParameters) {
17
+ return {
18
+ schemeId: "aws.auth#sigv4",
19
+ signingProperties: {
20
+ name: "redshift-data",
21
+ region: authParameters.region,
22
+ },
23
+ propertiesExtractor: (config, context) => ({
24
+ signingProperties: {
25
+ config,
26
+ context,
27
+ },
28
+ }),
29
+ };
30
+ }
31
+ const defaultRedshiftDataHttpAuthSchemeProvider = (authParameters) => {
32
+ const options = [];
33
+ switch (authParameters.operation) {
34
+ default: {
35
+ options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
36
+ }
37
+ }
38
+ return options;
39
+ };
40
+ exports.defaultRedshiftDataHttpAuthSchemeProvider = defaultRedshiftDataHttpAuthSchemeProvider;
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
@@ -58,13 +58,14 @@ module.exports = __toCommonJS(src_exports);
58
58
  var import_middleware_host_header = require("@aws-sdk/middleware-host-header");
59
59
  var import_middleware_logger = require("@aws-sdk/middleware-logger");
60
60
  var import_middleware_recursion_detection = require("@aws-sdk/middleware-recursion-detection");
61
- var import_middleware_signing = require("@aws-sdk/middleware-signing");
62
61
  var import_middleware_user_agent = require("@aws-sdk/middleware-user-agent");
63
62
  var import_config_resolver = require("@smithy/config-resolver");
63
+ var import_core = require("@smithy/core");
64
64
  var import_middleware_content_length = require("@smithy/middleware-content-length");
65
65
  var import_middleware_endpoint = require("@smithy/middleware-endpoint");
66
66
  var import_middleware_retry = require("@smithy/middleware-retry");
67
67
 
68
+ var import_httpAuthSchemeProvider = require("./auth/httpAuthSchemeProvider");
68
69
 
69
70
  // src/endpoint/EndpointParameters.ts
70
71
  var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => {
@@ -89,19 +90,62 @@ var import_runtimeConfig = require("././runtimeConfig");
89
90
  var import_region_config_resolver = require("@aws-sdk/region-config-resolver");
90
91
  var import_protocol_http = require("@smithy/protocol-http");
91
92
  var import_smithy_client = require("@smithy/smithy-client");
93
+
94
+ // src/auth/httpAuthExtensionConfiguration.ts
95
+ var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => {
96
+ const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
97
+ let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
98
+ let _credentials = runtimeConfig.credentials;
99
+ return {
100
+ setHttpAuthScheme(httpAuthScheme) {
101
+ const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
102
+ if (index === -1) {
103
+ _httpAuthSchemes.push(httpAuthScheme);
104
+ } else {
105
+ _httpAuthSchemes.splice(index, 1, httpAuthScheme);
106
+ }
107
+ },
108
+ httpAuthSchemes() {
109
+ return _httpAuthSchemes;
110
+ },
111
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
112
+ _httpAuthSchemeProvider = httpAuthSchemeProvider;
113
+ },
114
+ httpAuthSchemeProvider() {
115
+ return _httpAuthSchemeProvider;
116
+ },
117
+ setCredentials(credentials) {
118
+ _credentials = credentials;
119
+ },
120
+ credentials() {
121
+ return _credentials;
122
+ }
123
+ };
124
+ }, "getHttpAuthExtensionConfiguration");
125
+ var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name((config) => {
126
+ return {
127
+ httpAuthSchemes: config.httpAuthSchemes(),
128
+ httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
129
+ credentials: config.credentials()
130
+ };
131
+ }, "resolveHttpAuthRuntimeConfig");
132
+
133
+ // src/runtimeExtensions.ts
92
134
  var asPartial = /* @__PURE__ */ __name((t) => t, "asPartial");
93
135
  var resolveRuntimeExtensions = /* @__PURE__ */ __name((runtimeConfig, extensions) => {
94
136
  const extensionConfiguration = {
95
137
  ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
96
138
  ...asPartial((0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig)),
97
- ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig))
139
+ ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
140
+ ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
98
141
  };
99
142
  extensions.forEach((extension) => extension.configure(extensionConfiguration));
100
143
  return {
101
144
  ...runtimeConfig,
102
145
  ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
103
146
  ...(0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration),
104
- ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration)
147
+ ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
148
+ ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
105
149
  };
106
150
  }, "resolveRuntimeExtensions");
107
151
 
@@ -114,8 +158,8 @@ var _RedshiftDataClient = class _RedshiftDataClient extends import_smithy_client
114
158
  const _config_3 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_2);
115
159
  const _config_4 = (0, import_middleware_retry.resolveRetryConfig)(_config_3);
116
160
  const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
117
- const _config_6 = (0, import_middleware_signing.resolveAwsAuthConfig)(_config_5);
118
- const _config_7 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_6);
161
+ const _config_6 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_5);
162
+ const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
119
163
  const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
120
164
  super(_config_8);
121
165
  this.config = _config_8;
@@ -124,8 +168,14 @@ var _RedshiftDataClient = class _RedshiftDataClient extends import_smithy_client
124
168
  this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
125
169
  this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
126
170
  this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
127
- this.middlewareStack.use((0, import_middleware_signing.getAwsAuthPlugin)(this.config));
128
171
  this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
172
+ this.middlewareStack.use(
173
+ (0, import_core.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
174
+ httpAuthSchemeParametersProvider: this.getDefaultHttpAuthSchemeParametersProvider(),
175
+ identityProviderConfigProvider: this.getIdentityProviderConfigProvider()
176
+ })
177
+ );
178
+ this.middlewareStack.use((0, import_core.getHttpSigningPlugin)(this.config));
129
179
  }
130
180
  /**
131
181
  * Destroy underlying resources, like sockets. It's usually not necessary to do this.
@@ -135,6 +185,14 @@ var _RedshiftDataClient = class _RedshiftDataClient extends import_smithy_client
135
185
  destroy() {
136
186
  super.destroy();
137
187
  }
188
+ getDefaultHttpAuthSchemeParametersProvider() {
189
+ return import_httpAuthSchemeProvider.defaultRedshiftDataHttpAuthSchemeParametersProvider;
190
+ }
191
+ getIdentityProviderConfigProvider() {
192
+ return async (config) => new import_core.DefaultIdentityProviderConfig({
193
+ "aws.auth#sigv4": config.credentials
194
+ });
195
+ }
138
196
  };
139
197
  __name(_RedshiftDataClient, "RedshiftDataClient");
140
198
  var RedshiftDataClient = _RedshiftDataClient;
@@ -149,7 +207,7 @@ var import_middleware_serde = require("@smithy/middleware-serde");
149
207
  var import_types = require("@smithy/types");
150
208
 
151
209
  // src/protocols/Aws_json1_1.ts
152
- var import_core = require("@aws-sdk/core");
210
+ var import_core2 = require("@aws-sdk/core");
153
211
 
154
212
 
155
213
  var import_uuid = require("uuid");
@@ -722,7 +780,7 @@ var de_Field = /* @__PURE__ */ __name((output, context) => {
722
780
  }, "de_Field");
723
781
  var de_FieldList = /* @__PURE__ */ __name((output, context) => {
724
782
  const retVal = (output || []).filter((e) => e != null).map((entry) => {
725
- return de_Field((0, import_core.awsExpectUnion)(entry), context);
783
+ return de_Field((0, import_core2.awsExpectUnion)(entry), context);
726
784
  });
727
785
  return retVal;
728
786
  }, "de_FieldList");
@@ -1047,28 +1105,28 @@ var RedshiftData = _RedshiftData;
1047
1105
  (0, import_smithy_client.createAggregatedClient)(commands, RedshiftData);
1048
1106
 
1049
1107
  // src/pagination/DescribeTablePaginator.ts
1050
- var import_core2 = require("@smithy/core");
1051
- var paginateDescribeTable = (0, import_core2.createPaginator)(RedshiftDataClient, DescribeTableCommand, "NextToken", "NextToken", "MaxResults");
1108
+
1109
+ var paginateDescribeTable = (0, import_core.createPaginator)(RedshiftDataClient, DescribeTableCommand, "NextToken", "NextToken", "MaxResults");
1052
1110
 
1053
1111
  // src/pagination/GetStatementResultPaginator.ts
1054
- var import_core3 = require("@smithy/core");
1055
- var paginateGetStatementResult = (0, import_core3.createPaginator)(RedshiftDataClient, GetStatementResultCommand, "NextToken", "NextToken", "");
1112
+
1113
+ var paginateGetStatementResult = (0, import_core.createPaginator)(RedshiftDataClient, GetStatementResultCommand, "NextToken", "NextToken", "");
1056
1114
 
1057
1115
  // src/pagination/ListDatabasesPaginator.ts
1058
- var import_core4 = require("@smithy/core");
1059
- var paginateListDatabases = (0, import_core4.createPaginator)(RedshiftDataClient, ListDatabasesCommand, "NextToken", "NextToken", "MaxResults");
1116
+
1117
+ var paginateListDatabases = (0, import_core.createPaginator)(RedshiftDataClient, ListDatabasesCommand, "NextToken", "NextToken", "MaxResults");
1060
1118
 
1061
1119
  // src/pagination/ListSchemasPaginator.ts
1062
- var import_core5 = require("@smithy/core");
1063
- var paginateListSchemas = (0, import_core5.createPaginator)(RedshiftDataClient, ListSchemasCommand, "NextToken", "NextToken", "MaxResults");
1120
+
1121
+ var paginateListSchemas = (0, import_core.createPaginator)(RedshiftDataClient, ListSchemasCommand, "NextToken", "NextToken", "MaxResults");
1064
1122
 
1065
1123
  // src/pagination/ListStatementsPaginator.ts
1066
- var import_core6 = require("@smithy/core");
1067
- var paginateListStatements = (0, import_core6.createPaginator)(RedshiftDataClient, ListStatementsCommand, "NextToken", "NextToken", "MaxResults");
1124
+
1125
+ var paginateListStatements = (0, import_core.createPaginator)(RedshiftDataClient, ListStatementsCommand, "NextToken", "NextToken", "MaxResults");
1068
1126
 
1069
1127
  // src/pagination/ListTablesPaginator.ts
1070
- var import_core7 = require("@smithy/core");
1071
- var paginateListTables = (0, import_core7.createPaginator)(RedshiftDataClient, ListTablesCommand, "NextToken", "NextToken", "MaxResults");
1128
+
1129
+ var paginateListTables = (0, import_core.createPaginator)(RedshiftDataClient, ListTablesCommand, "NextToken", "NextToken", "MaxResults");
1072
1130
 
1073
1131
  // src/index.ts
1074
1132
  var import_util_endpoints = require("@aws-sdk/util-endpoints");
@@ -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.defaultRedshiftDataHttpAuthSchemeProvider,
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 ?? "Redshift Data",
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 { defaultRedshiftDataHttpAuthSchemeParametersProvider, 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 RedshiftDataClient 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 RedshiftDataClient 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 defaultRedshiftDataHttpAuthSchemeParametersProvider;
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 defaultRedshiftDataHttpAuthSchemeParametersProvider = 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: "redshift-data",
17
+ region: authParameters.region,
18
+ },
19
+ propertiesExtractor: (config, context) => ({
20
+ signingProperties: {
21
+ config,
22
+ context,
23
+ },
24
+ }),
25
+ };
26
+ }
27
+ export const defaultRedshiftDataHttpAuthSchemeProvider = (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 { defaultRedshiftDataHttpAuthSchemeProvider } 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 ?? defaultRedshiftDataHttpAuthSchemeProvider,
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 ?? "Redshift Data",
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 { BatchExecuteStatementCommandInput, BatchExecuteStatementCommandOutput } from "./commands/BatchExecuteStatementCommand";
12
11
  import { CancelStatementCommandInput, CancelStatementCommandOutput } from "./commands/CancelStatementCommand";
13
12
  import { DescribeStatementCommandInput, DescribeStatementCommandOutput } from "./commands/DescribeStatementCommand";
@@ -101,20 +100,21 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
101
100
  * Enables FIPS compatible endpoints.
102
101
  */
103
102
  useFipsEndpoint?: boolean | __Provider<boolean>;
103
+ /**
104
+ * The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header
105
+ * @internal
106
+ */
107
+ defaultUserAgentProvider?: Provider<__UserAgent>;
104
108
  /**
105
109
  * The AWS region to which this client will send requests
106
110
  */
107
111
  region?: string | __Provider<string>;
108
112
  /**
109
113
  * Default credentials provider; Not available in browser runtime.
114
+ * @deprecated
110
115
  * @internal
111
116
  */
112
- credentialDefaultProvider?: (input: any) => __Provider<__Credentials>;
113
- /**
114
- * The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header
115
- * @internal
116
- */
117
- defaultUserAgentProvider?: Provider<__UserAgent>;
117
+ credentialDefaultProvider?: (input: any) => AwsCredentialIdentityProvider;
118
118
  /**
119
119
  * Value for how many times a request will be made at most in case of retry.
120
120
  */
@@ -141,7 +141,7 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
141
141
  /**
142
142
  * @public
143
143
  */
144
- export type RedshiftDataClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & RegionInputConfig & EndpointInputConfig<EndpointParameters> & RetryInputConfig & HostHeaderInputConfig & AwsAuthInputConfig & UserAgentInputConfig & ClientInputEndpointParameters;
144
+ export type RedshiftDataClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & RegionInputConfig & EndpointInputConfig<EndpointParameters> & RetryInputConfig & HostHeaderInputConfig & UserAgentInputConfig & HttpAuthSchemeInputConfig & ClientInputEndpointParameters;
145
145
  /**
146
146
  * @public
147
147
  *
@@ -152,7 +152,7 @@ export interface RedshiftDataClientConfig extends RedshiftDataClientConfigType {
152
152
  /**
153
153
  * @public
154
154
  */
155
- export type RedshiftDataClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & AwsAuthResolvedConfig & UserAgentResolvedConfig & ClientResolvedEndpointParameters;
155
+ export type RedshiftDataClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & UserAgentResolvedConfig & HttpAuthSchemeResolvedConfig & ClientResolvedEndpointParameters;
156
156
  /**
157
157
  * @public
158
158
  *
@@ -180,4 +180,6 @@ export declare class RedshiftDataClient extends __Client<__HttpHandlerOptions, S
180
180
  * Otherwise, sockets might stay open for quite a long time before the server terminates them.
181
181
  */
182
182
  destroy(): void;
183
+ private getDefaultHttpAuthSchemeParametersProvider;
184
+ private getIdentityProviderConfigProvider;
183
185
  }
@@ -0,0 +1,29 @@
1
+ import { AwsCredentialIdentity, AwsCredentialIdentityProvider, HttpAuthScheme } from "@smithy/types";
2
+ import { RedshiftDataHttpAuthSchemeProvider } from "./httpAuthSchemeProvider";
3
+ /**
4
+ * @internal
5
+ */
6
+ export interface HttpAuthExtensionConfiguration {
7
+ setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void;
8
+ httpAuthSchemes(): HttpAuthScheme[];
9
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider: RedshiftDataHttpAuthSchemeProvider): void;
10
+ httpAuthSchemeProvider(): RedshiftDataHttpAuthSchemeProvider;
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: RedshiftDataHttpAuthSchemeProvider;
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 { RedshiftDataClientResolvedConfig } from "../RedshiftDataClient";
4
+ /**
5
+ * @internal
6
+ */
7
+ export interface RedshiftDataHttpAuthSchemeParameters extends HttpAuthSchemeParameters {
8
+ region?: string;
9
+ }
10
+ /**
11
+ * @internal
12
+ */
13
+ export interface RedshiftDataHttpAuthSchemeParametersProvider extends HttpAuthSchemeParametersProvider<RedshiftDataClientResolvedConfig, HandlerExecutionContext, RedshiftDataHttpAuthSchemeParameters, object> {
14
+ }
15
+ /**
16
+ * @internal
17
+ */
18
+ export declare const defaultRedshiftDataHttpAuthSchemeParametersProvider: (config: RedshiftDataClientResolvedConfig, context: HandlerExecutionContext, input: object) => Promise<RedshiftDataHttpAuthSchemeParameters>;
19
+ /**
20
+ * @internal
21
+ */
22
+ export interface RedshiftDataHttpAuthSchemeProvider extends HttpAuthSchemeProvider<RedshiftDataHttpAuthSchemeParameters> {
23
+ }
24
+ /**
25
+ * @internal
26
+ */
27
+ export declare const defaultRedshiftDataHttpAuthSchemeProvider: RedshiftDataHttpAuthSchemeProvider;
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?: RedshiftDataHttpAuthSchemeProvider;
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: RedshiftDataHttpAuthSchemeProvider;
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 RedshiftDataExtensionConfiguration extends HttpHandlerExtensionConfiguration, DefaultExtensionConfiguration, AwsRegionExtensionConfiguration {
8
+ export interface RedshiftDataExtensionConfiguration extends HttpHandlerExtensionConfiguration, DefaultExtensionConfiguration, AwsRegionExtensionConfiguration, HttpAuthExtensionConfiguration {
8
9
  }
@@ -7,7 +7,7 @@ export declare const getRuntimeConfig: (config: RedshiftDataClientConfig) => {
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: RedshiftDataClientConfig) => {
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").RedshiftDataHttpAuthSchemeProvider;
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: RedshiftDataClientConfig) => {
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").RedshiftDataHttpAuthSchemeProvider;
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: RedshiftDataClientConfig) => {
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: RedshiftDataClientConfig) => {
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").RedshiftDataHttpAuthSchemeProvider;
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: RedshiftDataClientConfig) => {
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").RedshiftDataHttpAuthSchemeProvider;
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
  BatchExecuteStatementCommandInput,
50
50
  BatchExecuteStatementCommandOutput,
@@ -130,9 +130,9 @@ export interface ClientDefaults
130
130
  serviceId?: string;
131
131
  useDualstackEndpoint?: boolean | __Provider<boolean>;
132
132
  useFipsEndpoint?: boolean | __Provider<boolean>;
133
- region?: string | __Provider<string>;
134
- credentialDefaultProvider?: (input: any) => __Provider<__Credentials>;
135
133
  defaultUserAgentProvider?: Provider<__UserAgent>;
134
+ region?: string | __Provider<string>;
135
+ credentialDefaultProvider?: (input: any) => AwsCredentialIdentityProvider;
136
136
  maxAttempts?: number | __Provider<number>;
137
137
  retryMode?: string | __Provider<string>;
138
138
  logger?: __Logger;
@@ -147,8 +147,8 @@ export type RedshiftDataClientConfigType = Partial<
147
147
  EndpointInputConfig<EndpointParameters> &
148
148
  RetryInputConfig &
149
149
  HostHeaderInputConfig &
150
- AwsAuthInputConfig &
151
150
  UserAgentInputConfig &
151
+ HttpAuthSchemeInputConfig &
152
152
  ClientInputEndpointParameters;
153
153
  export interface RedshiftDataClientConfig
154
154
  extends RedshiftDataClientConfigType {}
@@ -160,8 +160,8 @@ export type RedshiftDataClientResolvedConfigType =
160
160
  EndpointResolvedConfig<EndpointParameters> &
161
161
  RetryResolvedConfig &
162
162
  HostHeaderResolvedConfig &
163
- AwsAuthResolvedConfig &
164
163
  UserAgentResolvedConfig &
164
+ HttpAuthSchemeResolvedConfig &
165
165
  ClientResolvedEndpointParameters;
166
166
  export interface RedshiftDataClientResolvedConfig
167
167
  extends RedshiftDataClientResolvedConfigType {}
@@ -176,4 +176,6 @@ export declare class RedshiftDataClient extends __Client<
176
176
  ...[configuration]: __CheckOptionalClientConfig<RedshiftDataClientConfig>
177
177
  );
178
178
  destroy(): void;
179
+ private getDefaultHttpAuthSchemeParametersProvider;
180
+ private getIdentityProviderConfigProvider;
179
181
  }
@@ -0,0 +1,32 @@
1
+ import {
2
+ AwsCredentialIdentity,
3
+ AwsCredentialIdentityProvider,
4
+ HttpAuthScheme,
5
+ } from "@smithy/types";
6
+ import { RedshiftDataHttpAuthSchemeProvider } from "./httpAuthSchemeProvider";
7
+ export interface HttpAuthExtensionConfiguration {
8
+ setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void;
9
+ httpAuthSchemes(): HttpAuthScheme[];
10
+ setHttpAuthSchemeProvider(
11
+ httpAuthSchemeProvider: RedshiftDataHttpAuthSchemeProvider
12
+ ): void;
13
+ httpAuthSchemeProvider(): RedshiftDataHttpAuthSchemeProvider;
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: RedshiftDataHttpAuthSchemeProvider;
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,44 @@
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 { RedshiftDataClientResolvedConfig } from "../RedshiftDataClient";
14
+ export interface RedshiftDataHttpAuthSchemeParameters
15
+ extends HttpAuthSchemeParameters {
16
+ region?: string;
17
+ }
18
+ export interface RedshiftDataHttpAuthSchemeParametersProvider
19
+ extends HttpAuthSchemeParametersProvider<
20
+ RedshiftDataClientResolvedConfig,
21
+ HandlerExecutionContext,
22
+ RedshiftDataHttpAuthSchemeParameters,
23
+ object
24
+ > {}
25
+ export declare const defaultRedshiftDataHttpAuthSchemeParametersProvider: (
26
+ config: RedshiftDataClientResolvedConfig,
27
+ context: HandlerExecutionContext,
28
+ input: object
29
+ ) => Promise<RedshiftDataHttpAuthSchemeParameters>;
30
+ export interface RedshiftDataHttpAuthSchemeProvider
31
+ extends HttpAuthSchemeProvider<RedshiftDataHttpAuthSchemeParameters> {}
32
+ export declare const defaultRedshiftDataHttpAuthSchemeProvider: RedshiftDataHttpAuthSchemeProvider;
33
+ export interface HttpAuthSchemeInputConfig extends AwsSdkSigV4AuthInputConfig {
34
+ httpAuthSchemes?: HttpAuthScheme[];
35
+ httpAuthSchemeProvider?: RedshiftDataHttpAuthSchemeProvider;
36
+ }
37
+ export interface HttpAuthSchemeResolvedConfig
38
+ extends AwsSdkSigV4AuthResolvedConfig {
39
+ readonly httpAuthSchemes: HttpAuthScheme[];
40
+ readonly httpAuthSchemeProvider: RedshiftDataHttpAuthSchemeProvider;
41
+ }
42
+ export declare const resolveHttpAuthSchemeConfig: <T>(
43
+ config: T & HttpAuthSchemeInputConfig & AwsSdkSigV4PreviouslyResolved
44
+ ) => 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 RedshiftDataExtensionConfiguration
5
6
  extends HttpHandlerExtensionConfiguration,
6
7
  DefaultExtensionConfiguration,
7
- AwsRegionExtensionConfiguration {}
8
+ AwsRegionExtensionConfiguration,
9
+ HttpAuthExtensionConfiguration {}
@@ -8,7 +8,7 @@ export declare const getRuntimeConfig: (config: RedshiftDataClientConfig) => {
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: RedshiftDataClientConfig) => {
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").RedshiftDataHttpAuthSchemeProvider;
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: RedshiftDataClientConfig) => {
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: RedshiftDataClientConfig) => {
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").RedshiftDataHttpAuthSchemeProvider;
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: RedshiftDataClientConfig) => {
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: RedshiftDataClientConfig) => {
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: RedshiftDataClientConfig) => {
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").RedshiftDataHttpAuthSchemeProvider;
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: RedshiftDataClientConfig) => {
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: RedshiftDataClientConfig) => {
11
11
  }
12
12
  ) => import("@smithy/types").EndpointV2;
13
13
  extensions: import("./runtimeExtensions").RuntimeExtension[];
14
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").RedshiftDataHttpAuthSchemeProvider;
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-redshift-data",
3
3
  "description": "AWS SDK for JavaScript Redshift Data 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-redshift-data",
@@ -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
  "tslib": "^2.5.0",