@smithy/credential-provider-imds 3.2.8 → 4.0.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.
package/dist-cjs/index.js
CHANGED
|
@@ -44,13 +44,12 @@ var import_buffer = require("buffer");
|
|
|
44
44
|
var import_http = require("http");
|
|
45
45
|
function httpRequest(options) {
|
|
46
46
|
return new Promise((resolve, reject) => {
|
|
47
|
-
var _a;
|
|
48
47
|
const req = (0, import_http.request)({
|
|
49
48
|
method: "GET",
|
|
50
49
|
...options,
|
|
51
50
|
// Node.js http module doesn't accept hostname with square brackets
|
|
52
51
|
// Refs: https://github.com/nodejs/node/issues/39738
|
|
53
|
-
hostname:
|
|
52
|
+
hostname: options.hostname?.replace(/^\[(.+)\]$/, "$1")
|
|
54
53
|
});
|
|
55
54
|
req.on("error", (err) => {
|
|
56
55
|
reject(Object.assign(new import_property_provider.ProviderError("Unable to connect to instance metadata service"), err));
|
|
@@ -189,16 +188,17 @@ var getCmdsUri = /* @__PURE__ */ __name(async ({ logger }) => {
|
|
|
189
188
|
|
|
190
189
|
// src/error/InstanceMetadataV1FallbackError.ts
|
|
191
190
|
|
|
192
|
-
var
|
|
191
|
+
var InstanceMetadataV1FallbackError = class _InstanceMetadataV1FallbackError extends import_property_provider.CredentialsProviderError {
|
|
193
192
|
constructor(message, tryNextLink = true) {
|
|
194
193
|
super(message, tryNextLink);
|
|
195
194
|
this.tryNextLink = tryNextLink;
|
|
196
195
|
this.name = "InstanceMetadataV1FallbackError";
|
|
197
196
|
Object.setPrototypeOf(this, _InstanceMetadataV1FallbackError.prototype);
|
|
198
197
|
}
|
|
198
|
+
static {
|
|
199
|
+
__name(this, "InstanceMetadataV1FallbackError");
|
|
200
|
+
}
|
|
199
201
|
};
|
|
200
|
-
__name(_InstanceMetadataV1FallbackError, "InstanceMetadataV1FallbackError");
|
|
201
|
-
var InstanceMetadataV1FallbackError = _InstanceMetadataV1FallbackError;
|
|
202
202
|
|
|
203
203
|
// src/utils/getInstanceMetadataEndpoint.ts
|
|
204
204
|
var import_node_config_provider = require("@smithy/node-config-provider");
|
|
@@ -272,7 +272,7 @@ For more information, please visit: ` + STATIC_STABILITY_DOC_URL
|
|
|
272
272
|
|
|
273
273
|
// src/utils/staticStabilityProvider.ts
|
|
274
274
|
var staticStabilityProvider = /* @__PURE__ */ __name((provider, options = {}) => {
|
|
275
|
-
const logger =
|
|
275
|
+
const logger = options?.logger || console;
|
|
276
276
|
let pastCredentials;
|
|
277
277
|
return async () => {
|
|
278
278
|
let credentials;
|
|
@@ -306,8 +306,7 @@ var getInstanceMetadataProvider = /* @__PURE__ */ __name((init = {}) => {
|
|
|
306
306
|
const { logger, profile } = init;
|
|
307
307
|
const { timeout, maxRetries } = providerConfigFromInit(init);
|
|
308
308
|
const getCredentials = /* @__PURE__ */ __name(async (maxRetries2, options) => {
|
|
309
|
-
|
|
310
|
-
const isImdsV1Fallback = disableFetchToken || ((_a = options.headers) == null ? void 0 : _a[X_AWS_EC2_METADATA_TOKEN]) == null;
|
|
309
|
+
const isImdsV1Fallback = disableFetchToken || options.headers?.[X_AWS_EC2_METADATA_TOKEN] == null;
|
|
311
310
|
if (isImdsV1Fallback) {
|
|
312
311
|
let fallbackBlockedFromProfile = false;
|
|
313
312
|
let fallbackBlockedFromProcessEnv = false;
|
|
@@ -378,21 +377,21 @@ var getInstanceMetadataProvider = /* @__PURE__ */ __name((init = {}) => {
|
|
|
378
377
|
return async () => {
|
|
379
378
|
const endpoint = await getInstanceMetadataEndpoint();
|
|
380
379
|
if (disableFetchToken) {
|
|
381
|
-
logger
|
|
380
|
+
logger?.debug("AWS SDK Instance Metadata", "using v1 fallback (no token fetch)");
|
|
382
381
|
return getCredentials(maxRetries, { ...endpoint, timeout });
|
|
383
382
|
} else {
|
|
384
383
|
let token;
|
|
385
384
|
try {
|
|
386
385
|
token = (await getMetadataToken({ ...endpoint, timeout })).toString();
|
|
387
386
|
} catch (error) {
|
|
388
|
-
if (
|
|
387
|
+
if (error?.statusCode === 400) {
|
|
389
388
|
throw Object.assign(error, {
|
|
390
389
|
message: "EC2 Metadata token request returned error"
|
|
391
390
|
});
|
|
392
391
|
} else if (error.message === "TimeoutError" || [403, 404, 405].includes(error.statusCode)) {
|
|
393
392
|
disableFetchToken = true;
|
|
394
393
|
}
|
|
395
|
-
logger
|
|
394
|
+
logger?.debug("AWS SDK Instance Metadata", "using v1 fallback (initial)");
|
|
396
395
|
return getCredentials(maxRetries, { ...endpoint, timeout });
|
|
397
396
|
}
|
|
398
397
|
return getCredentials(maxRetries, {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smithy/credential-provider-imds",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"description": "AWS credential provider that sources credentials from the EC2 instance metadata service and ECS container metadata service",
|
|
5
5
|
"main": "./dist-cjs/index.js",
|
|
6
6
|
"module": "./dist-es/index.js",
|
|
@@ -27,14 +27,14 @@
|
|
|
27
27
|
},
|
|
28
28
|
"license": "Apache-2.0",
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@smithy/node-config-provider": "^
|
|
31
|
-
"@smithy/property-provider": "^
|
|
32
|
-
"@smithy/types": "^
|
|
33
|
-
"@smithy/url-parser": "^
|
|
30
|
+
"@smithy/node-config-provider": "^4.0.0",
|
|
31
|
+
"@smithy/property-provider": "^4.0.0",
|
|
32
|
+
"@smithy/types": "^4.0.0",
|
|
33
|
+
"@smithy/url-parser": "^4.0.0",
|
|
34
34
|
"tslib": "^2.6.2"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@types/node": "^
|
|
37
|
+
"@types/node": "^18.11.9",
|
|
38
38
|
"concurrently": "7.0.0",
|
|
39
39
|
"downlevel-dts": "0.10.1",
|
|
40
40
|
"rimraf": "3.0.2",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
},
|
|
43
43
|
"types": "./dist-types/index.d.ts",
|
|
44
44
|
"engines": {
|
|
45
|
-
"node": ">=
|
|
45
|
+
"node": ">=18.0.0"
|
|
46
46
|
},
|
|
47
47
|
"typesVersions": {
|
|
48
48
|
"<4.0": {
|