@aws-sdk/credential-provider-node 3.496.0 → 3.501.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
@@ -1,6 +1,8 @@
1
+ var __create = Object.create;
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
4
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
7
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
8
  var __export = (target, all) => {
@@ -15,59 +17,87 @@ var __copyProps = (to, from, except, desc) => {
15
17
  }
16
18
  return to;
17
19
  };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
18
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
29
 
20
30
  // src/index.ts
21
31
  var src_exports = {};
22
32
  __export(src_exports, {
33
+ credentialsTreatedAsExpired: () => credentialsTreatedAsExpired,
34
+ credentialsWillNeedRefresh: () => credentialsWillNeedRefresh,
23
35
  defaultProvider: () => defaultProvider
24
36
  });
25
37
  module.exports = __toCommonJS(src_exports);
26
38
 
27
39
  // src/defaultProvider.ts
28
- var import_credential_provider_env = require("@aws-sdk/credential-provider-env");
29
- var import_credential_provider_ini = require("@aws-sdk/credential-provider-ini");
30
- var import_credential_provider_process = require("@aws-sdk/credential-provider-process");
31
- var import_credential_provider_sso = require("@aws-sdk/credential-provider-sso");
32
- var import_credential_provider_web_identity = require("@aws-sdk/credential-provider-web-identity");
33
40
 
34
41
  var import_shared_ini_file_loader = require("@smithy/shared-ini-file-loader");
35
42
 
36
43
  // src/remoteProvider.ts
37
- var import_credential_provider_imds = require("@smithy/credential-provider-imds");
38
44
  var import_property_provider = require("@smithy/property-provider");
39
45
  var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
40
- var remoteProvider = /* @__PURE__ */ __name((init) => {
41
- if (process.env[import_credential_provider_imds.ENV_CMDS_RELATIVE_URI] || process.env[import_credential_provider_imds.ENV_CMDS_FULL_URI]) {
42
- return (0, import_credential_provider_imds.fromContainerMetadata)(init);
46
+ var remoteProvider = /* @__PURE__ */ __name(async (init) => {
47
+ const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await Promise.resolve().then(() => __toESM(require("@smithy/credential-provider-imds")));
48
+ if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {
49
+ return fromContainerMetadata(init);
43
50
  }
44
51
  if (process.env[ENV_IMDS_DISABLED]) {
45
52
  return async () => {
46
53
  throw new import_property_provider.CredentialsProviderError("EC2 Instance Metadata Service access disabled");
47
54
  };
48
55
  }
49
- return (0, import_credential_provider_imds.fromInstanceMetadata)(init);
56
+ return fromInstanceMetadata(init);
50
57
  }, "remoteProvider");
51
58
 
52
59
  // src/defaultProvider.ts
53
60
  var defaultProvider = /* @__PURE__ */ __name((init = {}) => (0, import_property_provider.memoize)(
54
61
  (0, import_property_provider.chain)(
55
- ...init.profile || process.env[import_shared_ini_file_loader.ENV_PROFILE] ? [] : [(0, import_credential_provider_env.fromEnv)()],
56
- (0, import_credential_provider_sso.fromSSO)(init),
57
- (0, import_credential_provider_ini.fromIni)(init),
58
- (0, import_credential_provider_process.fromProcess)(init),
59
- (0, import_credential_provider_web_identity.fromTokenFile)(init),
60
- remoteProvider(init),
62
+ ...init.profile || process.env[import_shared_ini_file_loader.ENV_PROFILE] ? [] : [
63
+ async () => {
64
+ const { fromEnv } = await Promise.resolve().then(() => __toESM(require("@aws-sdk/credential-provider-env")));
65
+ return fromEnv()();
66
+ }
67
+ ],
68
+ async () => {
69
+ const { fromSSO } = await Promise.resolve().then(() => __toESM(require("@aws-sdk/credential-provider-sso")));
70
+ return fromSSO(init)();
71
+ },
72
+ async () => {
73
+ const { fromIni } = await Promise.resolve().then(() => __toESM(require("@aws-sdk/credential-provider-ini")));
74
+ return fromIni(init)();
75
+ },
76
+ async () => {
77
+ const { fromProcess } = await Promise.resolve().then(() => __toESM(require("@aws-sdk/credential-provider-process")));
78
+ return fromProcess(init)();
79
+ },
80
+ async () => {
81
+ const { fromTokenFile } = await Promise.resolve().then(() => __toESM(require("@aws-sdk/credential-provider-web-identity")));
82
+ return fromTokenFile(init)();
83
+ },
84
+ async () => {
85
+ return (await remoteProvider(init))();
86
+ },
61
87
  async () => {
62
88
  throw new import_property_provider.CredentialsProviderError("Could not load credentials from any providers", false);
63
89
  }
64
90
  ),
65
- (credentials) => credentials.expiration !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5,
66
- (credentials) => credentials.expiration !== void 0
91
+ credentialsTreatedAsExpired,
92
+ credentialsWillNeedRefresh
67
93
  ), "defaultProvider");
94
+ var credentialsWillNeedRefresh = /* @__PURE__ */ __name((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0, "credentialsWillNeedRefresh");
95
+ var credentialsTreatedAsExpired = /* @__PURE__ */ __name((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5, "credentialsTreatedAsExpired");
68
96
  // Annotate the CommonJS export names for ESM import in node:
69
97
 
70
98
  0 && (module.exports = {
71
- defaultProvider
99
+ defaultProvider,
100
+ credentialsWillNeedRefresh,
101
+ credentialsTreatedAsExpired
72
102
  });
73
103
 
@@ -1,11 +1,29 @@
1
- import { fromEnv } from "@aws-sdk/credential-provider-env";
2
- import { fromIni } from "@aws-sdk/credential-provider-ini";
3
- import { fromProcess } from "@aws-sdk/credential-provider-process";
4
- import { fromSSO } from "@aws-sdk/credential-provider-sso";
5
- import { fromTokenFile } from "@aws-sdk/credential-provider-web-identity";
6
1
  import { chain, CredentialsProviderError, memoize } from "@smithy/property-provider";
7
2
  import { ENV_PROFILE } from "@smithy/shared-ini-file-loader";
8
3
  import { remoteProvider } from "./remoteProvider";
9
- export const defaultProvider = (init = {}) => memoize(chain(...(init.profile || process.env[ENV_PROFILE] ? [] : [fromEnv()]), fromSSO(init), fromIni(init), fromProcess(init), fromTokenFile(init), remoteProvider(init), async () => {
4
+ export const defaultProvider = (init = {}) => memoize(chain(...(init.profile || process.env[ENV_PROFILE]
5
+ ? []
6
+ : [
7
+ async () => {
8
+ const { fromEnv } = await import("@aws-sdk/credential-provider-env");
9
+ return fromEnv()();
10
+ },
11
+ ]), async () => {
12
+ const { fromSSO } = await import("@aws-sdk/credential-provider-sso");
13
+ return fromSSO(init)();
14
+ }, async () => {
15
+ const { fromIni } = await import("@aws-sdk/credential-provider-ini");
16
+ return fromIni(init)();
17
+ }, async () => {
18
+ const { fromProcess } = await import("@aws-sdk/credential-provider-process");
19
+ return fromProcess(init)();
20
+ }, async () => {
21
+ const { fromTokenFile } = await import("@aws-sdk/credential-provider-web-identity");
22
+ return fromTokenFile(init)();
23
+ }, async () => {
24
+ return (await remoteProvider(init))();
25
+ }, async () => {
10
26
  throw new CredentialsProviderError("Could not load credentials from any providers", false);
11
- }), (credentials) => credentials.expiration !== undefined && credentials.expiration.getTime() - Date.now() < 300000, (credentials) => credentials.expiration !== undefined);
27
+ }), credentialsTreatedAsExpired, credentialsWillNeedRefresh);
28
+ export const credentialsWillNeedRefresh = (credentials) => credentials?.expiration !== undefined;
29
+ export const credentialsTreatedAsExpired = (credentials) => credentials?.expiration !== undefined && credentials.expiration.getTime() - Date.now() < 300000;
@@ -1,7 +1,7 @@
1
- import { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata, } from "@smithy/credential-provider-imds";
2
1
  import { CredentialsProviderError } from "@smithy/property-provider";
3
2
  export const ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
4
- export const remoteProvider = (init) => {
3
+ export const remoteProvider = async (init) => {
4
+ const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await import("@smithy/credential-provider-imds");
5
5
  if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {
6
6
  return fromContainerMetadata(init);
7
7
  }
@@ -1,8 +1,8 @@
1
- import { FromIniInit } from "@aws-sdk/credential-provider-ini";
2
- import { FromProcessInit } from "@aws-sdk/credential-provider-process";
3
- import { FromSSOInit } from "@aws-sdk/credential-provider-sso";
4
- import { FromTokenFileInit } from "@aws-sdk/credential-provider-web-identity";
5
- import { RemoteProviderInit } from "@smithy/credential-provider-imds";
1
+ import type { FromIniInit } from "@aws-sdk/credential-provider-ini";
2
+ import type { FromProcessInit } from "@aws-sdk/credential-provider-process";
3
+ import type { FromSSOInit } from "@aws-sdk/credential-provider-sso";
4
+ import type { FromTokenFileInit } from "@aws-sdk/credential-provider-web-identity";
5
+ import type { RemoteProviderInit } from "@smithy/credential-provider-imds";
6
6
  import { AwsCredentialIdentity, MemoizedProvider } from "@smithy/types";
7
7
  export type DefaultProviderInit = FromIniInit & RemoteProviderInit & FromProcessInit & FromSSOInit & FromTokenFileInit;
8
8
  /**
@@ -40,3 +40,15 @@ export type DefaultProviderInit = FromIniInit & RemoteProviderInit & FromProcess
40
40
  * ECS Container Metadata Service
41
41
  */
42
42
  export declare const defaultProvider: (init?: DefaultProviderInit) => MemoizedProvider<AwsCredentialIdentity>;
43
+ /**
44
+ * @internal
45
+ *
46
+ * @returns credentials have expiration.
47
+ */
48
+ export declare const credentialsWillNeedRefresh: (credentials: AwsCredentialIdentity) => boolean;
49
+ /**
50
+ * @internal
51
+ *
52
+ * @returns credentials with less than 5 minutes left.
53
+ */
54
+ export declare const credentialsTreatedAsExpired: (credentials: AwsCredentialIdentity) => boolean;
@@ -1,4 +1,7 @@
1
- import { RemoteProviderInit } from "@smithy/credential-provider-imds";
2
- import { AwsCredentialIdentityProvider } from "@smithy/types";
1
+ import type { RemoteProviderInit } from "@smithy/credential-provider-imds";
2
+ import type { AwsCredentialIdentityProvider } from "@smithy/types";
3
3
  export declare const ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
4
- export declare const remoteProvider: (init: RemoteProviderInit) => AwsCredentialIdentityProvider;
4
+ /**
5
+ * @internal
6
+ */
7
+ export declare const remoteProvider: (init: RemoteProviderInit) => Promise<AwsCredentialIdentityProvider>;
@@ -12,3 +12,9 @@ export type DefaultProviderInit = FromIniInit &
12
12
  export declare const defaultProvider: (
13
13
  init?: DefaultProviderInit
14
14
  ) => MemoizedProvider<AwsCredentialIdentity>;
15
+ export declare const credentialsWillNeedRefresh: (
16
+ credentials: AwsCredentialIdentity
17
+ ) => boolean;
18
+ export declare const credentialsTreatedAsExpired: (
19
+ credentials: AwsCredentialIdentity
20
+ ) => boolean;
@@ -3,4 +3,4 @@ import { AwsCredentialIdentityProvider } from "@smithy/types";
3
3
  export declare const ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
4
4
  export declare const remoteProvider: (
5
5
  init: RemoteProviderInit
6
- ) => AwsCredentialIdentityProvider;
6
+ ) => Promise<AwsCredentialIdentityProvider>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-node",
3
- "version": "3.496.0",
3
+ "version": "3.501.0",
4
4
  "description": "AWS credential provider that sources credentials from a Node.JS environment. ",
5
5
  "engines": {
6
6
  "node": ">=14.0.0"
@@ -28,9 +28,9 @@
28
28
  "license": "Apache-2.0",
29
29
  "dependencies": {
30
30
  "@aws-sdk/credential-provider-env": "3.496.0",
31
- "@aws-sdk/credential-provider-ini": "3.496.0",
31
+ "@aws-sdk/credential-provider-ini": "3.501.0",
32
32
  "@aws-sdk/credential-provider-process": "3.496.0",
33
- "@aws-sdk/credential-provider-sso": "3.496.0",
33
+ "@aws-sdk/credential-provider-sso": "3.501.0",
34
34
  "@aws-sdk/credential-provider-web-identity": "3.496.0",
35
35
  "@aws-sdk/types": "3.496.0",
36
36
  "@smithy/credential-provider-imds": "^2.2.1",