@etainabl/nodejs-sdk 1.3.192 → 1.3.196

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/esm/index.js +1546 -9430
  2. package/dist/esm/index.js.map +1 -1
  3. package/dist/index.d.cts +11 -1
  4. package/dist/index.d.ts +11 -1
  5. package/dist/index.js +7745 -31978
  6. package/dist/index.js.map +1 -1
  7. package/package.json +2 -1
  8. package/dist/esm/chunk-3G3VXGQN.js +0 -164
  9. package/dist/esm/chunk-3G3VXGQN.js.map +0 -1
  10. package/dist/esm/chunk-4JDZJVKZ.js +0 -29
  11. package/dist/esm/chunk-4JDZJVKZ.js.map +0 -1
  12. package/dist/esm/chunk-4QSQRVYQ.js +0 -4408
  13. package/dist/esm/chunk-4QSQRVYQ.js.map +0 -1
  14. package/dist/esm/chunk-7QBJXGSP.js +0 -143
  15. package/dist/esm/chunk-7QBJXGSP.js.map +0 -1
  16. package/dist/esm/chunk-CRX53WMM.js +0 -222
  17. package/dist/esm/chunk-CRX53WMM.js.map +0 -1
  18. package/dist/esm/chunk-D74LA2XQ.js +0 -773
  19. package/dist/esm/chunk-D74LA2XQ.js.map +0 -1
  20. package/dist/esm/chunk-G3PMV62Z.js +0 -36
  21. package/dist/esm/chunk-G3PMV62Z.js.map +0 -1
  22. package/dist/esm/chunk-IX2LY325.js +0 -38
  23. package/dist/esm/chunk-IX2LY325.js.map +0 -1
  24. package/dist/esm/chunk-KWPO3OOT.js +0 -180
  25. package/dist/esm/chunk-KWPO3OOT.js.map +0 -1
  26. package/dist/esm/chunk-MCSCBMNG.js +0 -1424
  27. package/dist/esm/chunk-MCSCBMNG.js.map +0 -1
  28. package/dist/esm/chunk-RREOR7G6.js +0 -9
  29. package/dist/esm/chunk-RREOR7G6.js.map +0 -1
  30. package/dist/esm/chunk-UQAJZJ7E.js +0 -11
  31. package/dist/esm/chunk-UQAJZJ7E.js.map +0 -1
  32. package/dist/esm/chunk-UZGMBQZB.js +0 -13
  33. package/dist/esm/chunk-UZGMBQZB.js.map +0 -1
  34. package/dist/esm/chunk-XARQOPCZ.js +0 -47
  35. package/dist/esm/chunk-XARQOPCZ.js.map +0 -1
  36. package/dist/esm/chunk-YCRW5ZB7.js +0 -257
  37. package/dist/esm/chunk-YCRW5ZB7.js.map +0 -1
  38. package/dist/esm/chunk-YLT3BSXS.js +0 -180
  39. package/dist/esm/chunk-YLT3BSXS.js.map +0 -1
  40. package/dist/esm/chunk-Z63CAAFL.js +0 -43
  41. package/dist/esm/chunk-Z63CAAFL.js.map +0 -1
  42. package/dist/esm/dist-es-4VSEUPMG.js +0 -168
  43. package/dist/esm/dist-es-4VSEUPMG.js.map +0 -1
  44. package/dist/esm/dist-es-5G2D4IRG.js +0 -88
  45. package/dist/esm/dist-es-5G2D4IRG.js.map +0 -1
  46. package/dist/esm/dist-es-6PYQFA7S.js +0 -68
  47. package/dist/esm/dist-es-6PYQFA7S.js.map +0 -1
  48. package/dist/esm/dist-es-O7YXE2TO.js +0 -381
  49. package/dist/esm/dist-es-O7YXE2TO.js.map +0 -1
  50. package/dist/esm/dist-es-RVUNLU7U.js +0 -314
  51. package/dist/esm/dist-es-RVUNLU7U.js.map +0 -1
  52. package/dist/esm/dist-es-UEBBJXWA.js +0 -22
  53. package/dist/esm/dist-es-UEBBJXWA.js.map +0 -1
  54. package/dist/esm/dist-es-XS4DOSVC.js +0 -202
  55. package/dist/esm/dist-es-XS4DOSVC.js.map +0 -1
  56. package/dist/esm/event-streams-OE4R7Y65.js +0 -238
  57. package/dist/esm/event-streams-OE4R7Y65.js.map +0 -1
  58. package/dist/esm/loadSso-3FHKR3DN.js +0 -662
  59. package/dist/esm/loadSso-3FHKR3DN.js.map +0 -1
  60. package/dist/esm/sso-oidc-EORQ3JVU.js +0 -832
  61. package/dist/esm/sso-oidc-EORQ3JVU.js.map +0 -1
  62. package/dist/esm/sts-VPLY2J63.js +0 -1169
  63. package/dist/esm/sts-VPLY2J63.js.map +0 -1
@@ -1,314 +0,0 @@
1
- import {
2
- getProfileName,
3
- getSSOTokenFilepath,
4
- getSSOTokenFromFile,
5
- loadSsoSessionData,
6
- parseKnownFiles
7
- } from "./chunk-CRX53WMM.js";
8
- import {
9
- setCredentialFeature
10
- } from "./chunk-UZGMBQZB.js";
11
- import {
12
- CredentialsProviderError,
13
- ProviderError
14
- } from "./chunk-IX2LY325.js";
15
- import "./chunk-G3PMV62Z.js";
16
-
17
- // node_modules/@smithy/property-provider/dist-es/TokenProviderError.js
18
- var TokenProviderError = class _TokenProviderError extends ProviderError {
19
- name = "TokenProviderError";
20
- constructor(message, options = true) {
21
- super(message, options);
22
- Object.setPrototypeOf(this, _TokenProviderError.prototype);
23
- }
24
- };
25
-
26
- // node_modules/@aws-sdk/credential-provider-sso/dist-es/isSsoProfile.js
27
- var isSsoProfile = (arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string");
28
-
29
- // node_modules/@aws-sdk/token-providers/dist-es/constants.js
30
- var EXPIRE_WINDOW_MS = 5 * 60 * 1e3;
31
- var REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`;
32
-
33
- // node_modules/@aws-sdk/token-providers/dist-es/getSsoOidcClient.js
34
- var getSsoOidcClient = async (ssoRegion, init = {}) => {
35
- const { SSOOIDCClient } = await import("./sso-oidc-EORQ3JVU.js");
36
- const ssoOidcClient = new SSOOIDCClient(Object.assign({}, init.clientConfig ?? {}, {
37
- region: ssoRegion ?? init.clientConfig?.region,
38
- logger: init.clientConfig?.logger ?? init.parentClientConfig?.logger
39
- }));
40
- return ssoOidcClient;
41
- };
42
-
43
- // node_modules/@aws-sdk/token-providers/dist-es/getNewSsoOidcToken.js
44
- var getNewSsoOidcToken = async (ssoToken, ssoRegion, init = {}) => {
45
- const { CreateTokenCommand } = await import("./sso-oidc-EORQ3JVU.js");
46
- const ssoOidcClient = await getSsoOidcClient(ssoRegion, init);
47
- return ssoOidcClient.send(new CreateTokenCommand({
48
- clientId: ssoToken.clientId,
49
- clientSecret: ssoToken.clientSecret,
50
- refreshToken: ssoToken.refreshToken,
51
- grantType: "refresh_token"
52
- }));
53
- };
54
-
55
- // node_modules/@aws-sdk/token-providers/dist-es/validateTokenExpiry.js
56
- var validateTokenExpiry = (token) => {
57
- if (token.expiration && token.expiration.getTime() < Date.now()) {
58
- throw new TokenProviderError(`Token is expired. ${REFRESH_MESSAGE}`, false);
59
- }
60
- };
61
-
62
- // node_modules/@aws-sdk/token-providers/dist-es/validateTokenKey.js
63
- var validateTokenKey = (key, value, forRefresh = false) => {
64
- if (typeof value === "undefined") {
65
- throw new TokenProviderError(`Value not present for '${key}' in SSO Token${forRefresh ? ". Cannot refresh" : ""}. ${REFRESH_MESSAGE}`, false);
66
- }
67
- };
68
-
69
- // node_modules/@aws-sdk/token-providers/dist-es/writeSSOTokenToFile.js
70
- import { promises as fsPromises } from "fs";
71
- var { writeFile } = fsPromises;
72
- var writeSSOTokenToFile = (id, ssoToken) => {
73
- const tokenFilepath = getSSOTokenFilepath(id);
74
- const tokenString = JSON.stringify(ssoToken, null, 2);
75
- return writeFile(tokenFilepath, tokenString);
76
- };
77
-
78
- // node_modules/@aws-sdk/token-providers/dist-es/fromSso.js
79
- var lastRefreshAttemptTime = /* @__PURE__ */ new Date(0);
80
- var fromSso = (_init = {}) => async ({ callerClientConfig } = {}) => {
81
- const init = {
82
- ..._init,
83
- parentClientConfig: {
84
- ...callerClientConfig,
85
- ..._init.parentClientConfig
86
- }
87
- };
88
- init.logger?.debug("@aws-sdk/token-providers - fromSso");
89
- const profiles = await parseKnownFiles(init);
90
- const profileName = getProfileName({
91
- profile: init.profile ?? callerClientConfig?.profile
92
- });
93
- const profile = profiles[profileName];
94
- if (!profile) {
95
- throw new TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false);
96
- } else if (!profile["sso_session"]) {
97
- throw new TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`);
98
- }
99
- const ssoSessionName = profile["sso_session"];
100
- const ssoSessions = await loadSsoSessionData(init);
101
- const ssoSession = ssoSessions[ssoSessionName];
102
- if (!ssoSession) {
103
- throw new TokenProviderError(`Sso session '${ssoSessionName}' could not be found in shared credentials file.`, false);
104
- }
105
- for (const ssoSessionRequiredKey of ["sso_start_url", "sso_region"]) {
106
- if (!ssoSession[ssoSessionRequiredKey]) {
107
- throw new TokenProviderError(`Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`, false);
108
- }
109
- }
110
- const ssoStartUrl = ssoSession["sso_start_url"];
111
- const ssoRegion = ssoSession["sso_region"];
112
- let ssoToken;
113
- try {
114
- ssoToken = await getSSOTokenFromFile(ssoSessionName);
115
- } catch (e) {
116
- throw new TokenProviderError(`The SSO session token associated with profile=${profileName} was not found or is invalid. ${REFRESH_MESSAGE}`, false);
117
- }
118
- validateTokenKey("accessToken", ssoToken.accessToken);
119
- validateTokenKey("expiresAt", ssoToken.expiresAt);
120
- const { accessToken, expiresAt } = ssoToken;
121
- const existingToken = { token: accessToken, expiration: new Date(expiresAt) };
122
- if (existingToken.expiration.getTime() - Date.now() > EXPIRE_WINDOW_MS) {
123
- return existingToken;
124
- }
125
- if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1e3) {
126
- validateTokenExpiry(existingToken);
127
- return existingToken;
128
- }
129
- validateTokenKey("clientId", ssoToken.clientId, true);
130
- validateTokenKey("clientSecret", ssoToken.clientSecret, true);
131
- validateTokenKey("refreshToken", ssoToken.refreshToken, true);
132
- try {
133
- lastRefreshAttemptTime.setTime(Date.now());
134
- const newSsoOidcToken = await getNewSsoOidcToken(ssoToken, ssoRegion, init);
135
- validateTokenKey("accessToken", newSsoOidcToken.accessToken);
136
- validateTokenKey("expiresIn", newSsoOidcToken.expiresIn);
137
- const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1e3);
138
- try {
139
- await writeSSOTokenToFile(ssoSessionName, {
140
- ...ssoToken,
141
- accessToken: newSsoOidcToken.accessToken,
142
- expiresAt: newTokenExpiration.toISOString(),
143
- refreshToken: newSsoOidcToken.refreshToken
144
- });
145
- } catch (error) {
146
- }
147
- return {
148
- token: newSsoOidcToken.accessToken,
149
- expiration: newTokenExpiration
150
- };
151
- } catch (error) {
152
- validateTokenExpiry(existingToken);
153
- return existingToken;
154
- }
155
- };
156
-
157
- // node_modules/@aws-sdk/credential-provider-sso/dist-es/resolveSSOCredentials.js
158
- var SHOULD_FAIL_CREDENTIAL_CHAIN = false;
159
- var resolveSSOCredentials = async ({ ssoStartUrl, ssoSession, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, clientConfig, parentClientConfig, profile, logger }) => {
160
- let token;
161
- const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;
162
- if (ssoSession) {
163
- try {
164
- const _token = await fromSso({ profile })();
165
- token = {
166
- accessToken: _token.token,
167
- expiresAt: new Date(_token.expiration).toISOString()
168
- };
169
- } catch (e) {
170
- throw new CredentialsProviderError(e.message, {
171
- tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
172
- logger
173
- });
174
- }
175
- } else {
176
- try {
177
- token = await getSSOTokenFromFile(ssoStartUrl);
178
- } catch (e) {
179
- throw new CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {
180
- tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
181
- logger
182
- });
183
- }
184
- }
185
- if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {
186
- throw new CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {
187
- tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
188
- logger
189
- });
190
- }
191
- const { accessToken } = token;
192
- const { SSOClient, GetRoleCredentialsCommand } = await import("./loadSso-3FHKR3DN.js");
193
- const sso = ssoClient || new SSOClient(Object.assign({}, clientConfig ?? {}, {
194
- logger: clientConfig?.logger ?? parentClientConfig?.logger,
195
- region: clientConfig?.region ?? ssoRegion
196
- }));
197
- let ssoResp;
198
- try {
199
- ssoResp = await sso.send(new GetRoleCredentialsCommand({
200
- accountId: ssoAccountId,
201
- roleName: ssoRoleName,
202
- accessToken
203
- }));
204
- } catch (e) {
205
- throw new CredentialsProviderError(e, {
206
- tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
207
- logger
208
- });
209
- }
210
- const { roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {} } = ssoResp;
211
- if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {
212
- throw new CredentialsProviderError("SSO returns an invalid temporary credential.", {
213
- tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
214
- logger
215
- });
216
- }
217
- const credentials = {
218
- accessKeyId,
219
- secretAccessKey,
220
- sessionToken,
221
- expiration: new Date(expiration),
222
- ...credentialScope && { credentialScope },
223
- ...accountId && { accountId }
224
- };
225
- if (ssoSession) {
226
- setCredentialFeature(credentials, "CREDENTIALS_SSO", "s");
227
- } else {
228
- setCredentialFeature(credentials, "CREDENTIALS_SSO_LEGACY", "u");
229
- }
230
- return credentials;
231
- };
232
-
233
- // node_modules/@aws-sdk/credential-provider-sso/dist-es/validateSsoProfile.js
234
- var validateSsoProfile = (profile, logger) => {
235
- const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile;
236
- if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) {
237
- throw new CredentialsProviderError(`Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(profile).join(", ")}
238
- Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`, { tryNextLink: false, logger });
239
- }
240
- return profile;
241
- };
242
-
243
- // node_modules/@aws-sdk/credential-provider-sso/dist-es/fromSSO.js
244
- var fromSSO = (init = {}) => async ({ callerClientConfig } = {}) => {
245
- init.logger?.debug("@aws-sdk/credential-provider-sso - fromSSO");
246
- const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
247
- const { ssoClient } = init;
248
- const profileName = getProfileName({
249
- profile: init.profile ?? callerClientConfig?.profile
250
- });
251
- if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
252
- const profiles = await parseKnownFiles(init);
253
- const profile = profiles[profileName];
254
- if (!profile) {
255
- throw new CredentialsProviderError(`Profile ${profileName} was not found.`, { logger: init.logger });
256
- }
257
- if (!isSsoProfile(profile)) {
258
- throw new CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`, {
259
- logger: init.logger
260
- });
261
- }
262
- if (profile?.sso_session) {
263
- const ssoSessions = await loadSsoSessionData(init);
264
- const session = ssoSessions[profile.sso_session];
265
- const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`;
266
- if (ssoRegion && ssoRegion !== session.sso_region) {
267
- throw new CredentialsProviderError(`Conflicting SSO region` + conflictMsg, {
268
- tryNextLink: false,
269
- logger: init.logger
270
- });
271
- }
272
- if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {
273
- throw new CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, {
274
- tryNextLink: false,
275
- logger: init.logger
276
- });
277
- }
278
- profile.sso_region = session.sso_region;
279
- profile.sso_start_url = session.sso_start_url;
280
- }
281
- const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = validateSsoProfile(profile, init.logger);
282
- return resolveSSOCredentials({
283
- ssoStartUrl: sso_start_url,
284
- ssoSession: sso_session,
285
- ssoAccountId: sso_account_id,
286
- ssoRegion: sso_region,
287
- ssoRoleName: sso_role_name,
288
- ssoClient,
289
- clientConfig: init.clientConfig,
290
- parentClientConfig: init.parentClientConfig,
291
- profile: profileName
292
- });
293
- } else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {
294
- throw new CredentialsProviderError('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"', { tryNextLink: false, logger: init.logger });
295
- } else {
296
- return resolveSSOCredentials({
297
- ssoStartUrl,
298
- ssoSession,
299
- ssoAccountId,
300
- ssoRegion,
301
- ssoRoleName,
302
- ssoClient,
303
- clientConfig: init.clientConfig,
304
- parentClientConfig: init.parentClientConfig,
305
- profile: profileName
306
- });
307
- }
308
- };
309
- export {
310
- fromSSO,
311
- isSsoProfile,
312
- validateSsoProfile
313
- };
314
- //# sourceMappingURL=dist-es-RVUNLU7U.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../node_modules/@smithy/property-provider/dist-es/TokenProviderError.js","../../node_modules/@aws-sdk/credential-provider-sso/dist-es/isSsoProfile.js","../../node_modules/@aws-sdk/token-providers/dist-es/constants.js","../../node_modules/@aws-sdk/token-providers/dist-es/getSsoOidcClient.js","../../node_modules/@aws-sdk/token-providers/dist-es/getNewSsoOidcToken.js","../../node_modules/@aws-sdk/token-providers/dist-es/validateTokenExpiry.js","../../node_modules/@aws-sdk/token-providers/dist-es/validateTokenKey.js","../../node_modules/@aws-sdk/token-providers/dist-es/writeSSOTokenToFile.js","../../node_modules/@aws-sdk/token-providers/dist-es/fromSso.js","../../node_modules/@aws-sdk/credential-provider-sso/dist-es/resolveSSOCredentials.js","../../node_modules/@aws-sdk/credential-provider-sso/dist-es/validateSsoProfile.js","../../node_modules/@aws-sdk/credential-provider-sso/dist-es/fromSSO.js"],"sourcesContent":["import { ProviderError } from \"./ProviderError\";\nexport class TokenProviderError extends ProviderError {\n name = \"TokenProviderError\";\n constructor(message, options = true) {\n super(message, options);\n Object.setPrototypeOf(this, TokenProviderError.prototype);\n }\n}\n","export const isSsoProfile = (arg) => arg &&\n (typeof arg.sso_start_url === \"string\" ||\n typeof arg.sso_account_id === \"string\" ||\n typeof arg.sso_session === \"string\" ||\n typeof arg.sso_region === \"string\" ||\n typeof arg.sso_role_name === \"string\");\n","export const EXPIRE_WINDOW_MS = 5 * 60 * 1000;\nexport const REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`;\n","export const getSsoOidcClient = async (ssoRegion, init = {}) => {\n const { SSOOIDCClient } = await import(\"@aws-sdk/nested-clients/sso-oidc\");\n const ssoOidcClient = new SSOOIDCClient(Object.assign({}, init.clientConfig ?? {}, {\n region: ssoRegion ?? init.clientConfig?.region,\n logger: init.clientConfig?.logger ?? init.parentClientConfig?.logger,\n }));\n return ssoOidcClient;\n};\n","import { getSsoOidcClient } from \"./getSsoOidcClient\";\nexport const getNewSsoOidcToken = async (ssoToken, ssoRegion, init = {}) => {\n const { CreateTokenCommand } = await import(\"@aws-sdk/nested-clients/sso-oidc\");\n const ssoOidcClient = await getSsoOidcClient(ssoRegion, init);\n return ssoOidcClient.send(new CreateTokenCommand({\n clientId: ssoToken.clientId,\n clientSecret: ssoToken.clientSecret,\n refreshToken: ssoToken.refreshToken,\n grantType: \"refresh_token\",\n }));\n};\n","import { TokenProviderError } from \"@smithy/property-provider\";\nimport { REFRESH_MESSAGE } from \"./constants\";\nexport const validateTokenExpiry = (token) => {\n if (token.expiration && token.expiration.getTime() < Date.now()) {\n throw new TokenProviderError(`Token is expired. ${REFRESH_MESSAGE}`, false);\n }\n};\n","import { TokenProviderError } from \"@smithy/property-provider\";\nimport { REFRESH_MESSAGE } from \"./constants\";\nexport const validateTokenKey = (key, value, forRefresh = false) => {\n if (typeof value === \"undefined\") {\n throw new TokenProviderError(`Value not present for '${key}' in SSO Token${forRefresh ? \". Cannot refresh\" : \"\"}. ${REFRESH_MESSAGE}`, false);\n }\n};\n","import { getSSOTokenFilepath } from \"@smithy/shared-ini-file-loader\";\nimport { promises as fsPromises } from \"fs\";\nconst { writeFile } = fsPromises;\nexport const writeSSOTokenToFile = (id, ssoToken) => {\n const tokenFilepath = getSSOTokenFilepath(id);\n const tokenString = JSON.stringify(ssoToken, null, 2);\n return writeFile(tokenFilepath, tokenString);\n};\n","import { TokenProviderError } from \"@smithy/property-provider\";\nimport { getProfileName, getSSOTokenFromFile, loadSsoSessionData, parseKnownFiles, } from \"@smithy/shared-ini-file-loader\";\nimport { EXPIRE_WINDOW_MS, REFRESH_MESSAGE } from \"./constants\";\nimport { getNewSsoOidcToken } from \"./getNewSsoOidcToken\";\nimport { validateTokenExpiry } from \"./validateTokenExpiry\";\nimport { validateTokenKey } from \"./validateTokenKey\";\nimport { writeSSOTokenToFile } from \"./writeSSOTokenToFile\";\nconst lastRefreshAttemptTime = new Date(0);\nexport const fromSso = (_init = {}) => async ({ callerClientConfig } = {}) => {\n const init = {\n ..._init,\n parentClientConfig: {\n ...callerClientConfig,\n ..._init.parentClientConfig,\n },\n };\n init.logger?.debug(\"@aws-sdk/token-providers - fromSso\");\n const profiles = await parseKnownFiles(init);\n const profileName = getProfileName({\n profile: init.profile ?? callerClientConfig?.profile,\n });\n const profile = profiles[profileName];\n if (!profile) {\n throw new TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false);\n }\n else if (!profile[\"sso_session\"]) {\n throw new TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`);\n }\n const ssoSessionName = profile[\"sso_session\"];\n const ssoSessions = await loadSsoSessionData(init);\n const ssoSession = ssoSessions[ssoSessionName];\n if (!ssoSession) {\n throw new TokenProviderError(`Sso session '${ssoSessionName}' could not be found in shared credentials file.`, false);\n }\n for (const ssoSessionRequiredKey of [\"sso_start_url\", \"sso_region\"]) {\n if (!ssoSession[ssoSessionRequiredKey]) {\n throw new TokenProviderError(`Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`, false);\n }\n }\n const ssoStartUrl = ssoSession[\"sso_start_url\"];\n const ssoRegion = ssoSession[\"sso_region\"];\n let ssoToken;\n try {\n ssoToken = await getSSOTokenFromFile(ssoSessionName);\n }\n catch (e) {\n throw new TokenProviderError(`The SSO session token associated with profile=${profileName} was not found or is invalid. ${REFRESH_MESSAGE}`, false);\n }\n validateTokenKey(\"accessToken\", ssoToken.accessToken);\n validateTokenKey(\"expiresAt\", ssoToken.expiresAt);\n const { accessToken, expiresAt } = ssoToken;\n const existingToken = { token: accessToken, expiration: new Date(expiresAt) };\n if (existingToken.expiration.getTime() - Date.now() > EXPIRE_WINDOW_MS) {\n return existingToken;\n }\n if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1000) {\n validateTokenExpiry(existingToken);\n return existingToken;\n }\n validateTokenKey(\"clientId\", ssoToken.clientId, true);\n validateTokenKey(\"clientSecret\", ssoToken.clientSecret, true);\n validateTokenKey(\"refreshToken\", ssoToken.refreshToken, true);\n try {\n lastRefreshAttemptTime.setTime(Date.now());\n const newSsoOidcToken = await getNewSsoOidcToken(ssoToken, ssoRegion, init);\n validateTokenKey(\"accessToken\", newSsoOidcToken.accessToken);\n validateTokenKey(\"expiresIn\", newSsoOidcToken.expiresIn);\n const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1000);\n try {\n await writeSSOTokenToFile(ssoSessionName, {\n ...ssoToken,\n accessToken: newSsoOidcToken.accessToken,\n expiresAt: newTokenExpiration.toISOString(),\n refreshToken: newSsoOidcToken.refreshToken,\n });\n }\n catch (error) {\n }\n return {\n token: newSsoOidcToken.accessToken,\n expiration: newTokenExpiration,\n };\n }\n catch (error) {\n validateTokenExpiry(existingToken);\n return existingToken;\n }\n};\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { fromSso as getSsoTokenProvider } from \"@aws-sdk/token-providers\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getSSOTokenFromFile } from \"@smithy/shared-ini-file-loader\";\nconst SHOULD_FAIL_CREDENTIAL_CHAIN = false;\nexport const resolveSSOCredentials = async ({ ssoStartUrl, ssoSession, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, clientConfig, parentClientConfig, profile, logger, }) => {\n let token;\n const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;\n if (ssoSession) {\n try {\n const _token = await getSsoTokenProvider({ profile })();\n token = {\n accessToken: _token.token,\n expiresAt: new Date(_token.expiration).toISOString(),\n };\n }\n catch (e) {\n throw new CredentialsProviderError(e.message, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n }\n else {\n try {\n token = await getSSOTokenFromFile(ssoStartUrl);\n }\n catch (e) {\n throw new CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n }\n if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {\n throw new CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n const { accessToken } = token;\n const { SSOClient, GetRoleCredentialsCommand } = await import(\"./loadSso\");\n const sso = ssoClient ||\n new SSOClient(Object.assign({}, clientConfig ?? {}, {\n logger: clientConfig?.logger ?? parentClientConfig?.logger,\n region: clientConfig?.region ?? ssoRegion,\n }));\n let ssoResp;\n try {\n ssoResp = await sso.send(new GetRoleCredentialsCommand({\n accountId: ssoAccountId,\n roleName: ssoRoleName,\n accessToken,\n }));\n }\n catch (e) {\n throw new CredentialsProviderError(e, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n const { roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {}, } = ssoResp;\n if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {\n throw new CredentialsProviderError(\"SSO returns an invalid temporary credential.\", {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n const credentials = {\n accessKeyId,\n secretAccessKey,\n sessionToken,\n expiration: new Date(expiration),\n ...(credentialScope && { credentialScope }),\n ...(accountId && { accountId }),\n };\n if (ssoSession) {\n setCredentialFeature(credentials, \"CREDENTIALS_SSO\", \"s\");\n }\n else {\n setCredentialFeature(credentials, \"CREDENTIALS_SSO_LEGACY\", \"u\");\n }\n return credentials;\n};\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nexport const validateSsoProfile = (profile, logger) => {\n const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile;\n if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) {\n throw new CredentialsProviderError(`Profile is configured with invalid SSO credentials. Required parameters \"sso_account_id\", ` +\n `\"sso_region\", \"sso_role_name\", \"sso_start_url\". Got ${Object.keys(profile).join(\", \")}\\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`, { tryNextLink: false, logger });\n }\n return profile;\n};\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getProfileName, loadSsoSessionData, parseKnownFiles } from \"@smithy/shared-ini-file-loader\";\nimport { isSsoProfile } from \"./isSsoProfile\";\nimport { resolveSSOCredentials } from \"./resolveSSOCredentials\";\nimport { validateSsoProfile } from \"./validateSsoProfile\";\nexport const fromSSO = (init = {}) => async ({ callerClientConfig } = {}) => {\n init.logger?.debug(\"@aws-sdk/credential-provider-sso - fromSSO\");\n const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;\n const { ssoClient } = init;\n const profileName = getProfileName({\n profile: init.profile ?? callerClientConfig?.profile,\n });\n if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {\n const profiles = await parseKnownFiles(init);\n const profile = profiles[profileName];\n if (!profile) {\n throw new CredentialsProviderError(`Profile ${profileName} was not found.`, { logger: init.logger });\n }\n if (!isSsoProfile(profile)) {\n throw new CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`, {\n logger: init.logger,\n });\n }\n if (profile?.sso_session) {\n const ssoSessions = await loadSsoSessionData(init);\n const session = ssoSessions[profile.sso_session];\n const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`;\n if (ssoRegion && ssoRegion !== session.sso_region) {\n throw new CredentialsProviderError(`Conflicting SSO region` + conflictMsg, {\n tryNextLink: false,\n logger: init.logger,\n });\n }\n if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {\n throw new CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, {\n tryNextLink: false,\n logger: init.logger,\n });\n }\n profile.sso_region = session.sso_region;\n profile.sso_start_url = session.sso_start_url;\n }\n const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = validateSsoProfile(profile, init.logger);\n return resolveSSOCredentials({\n ssoStartUrl: sso_start_url,\n ssoSession: sso_session,\n ssoAccountId: sso_account_id,\n ssoRegion: sso_region,\n ssoRoleName: sso_role_name,\n ssoClient: ssoClient,\n clientConfig: init.clientConfig,\n parentClientConfig: init.parentClientConfig,\n profile: profileName,\n });\n }\n else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {\n throw new CredentialsProviderError(\"Incomplete configuration. The fromSSO() argument hash must include \" +\n '\"ssoStartUrl\", \"ssoAccountId\", \"ssoRegion\", \"ssoRoleName\"', { tryNextLink: false, logger: init.logger });\n }\n else {\n return resolveSSOCredentials({\n ssoStartUrl,\n ssoSession,\n ssoAccountId,\n ssoRegion,\n ssoRoleName,\n ssoClient,\n clientConfig: init.clientConfig,\n parentClientConfig: init.parentClientConfig,\n profile: profileName,\n });\n }\n};\n"],"mappings":"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","names":[]}
@@ -1,22 +0,0 @@
1
- import {
2
- ENV_ACCOUNT_ID,
3
- ENV_CREDENTIAL_SCOPE,
4
- ENV_EXPIRATION,
5
- ENV_KEY,
6
- ENV_SECRET,
7
- ENV_SESSION,
8
- fromEnv
9
- } from "./chunk-XARQOPCZ.js";
10
- import "./chunk-UZGMBQZB.js";
11
- import "./chunk-IX2LY325.js";
12
- import "./chunk-G3PMV62Z.js";
13
- export {
14
- ENV_ACCOUNT_ID,
15
- ENV_CREDENTIAL_SCOPE,
16
- ENV_EXPIRATION,
17
- ENV_KEY,
18
- ENV_SECRET,
19
- ENV_SESSION,
20
- fromEnv
21
- };
22
- //# sourceMappingURL=dist-es-UEBBJXWA.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,202 +0,0 @@
1
- import {
2
- chain
3
- } from "./chunk-4JDZJVKZ.js";
4
- import {
5
- getProfileName,
6
- parseKnownFiles
7
- } from "./chunk-CRX53WMM.js";
8
- import {
9
- setCredentialFeature
10
- } from "./chunk-UZGMBQZB.js";
11
- import {
12
- CredentialsProviderError
13
- } from "./chunk-IX2LY325.js";
14
- import "./chunk-G3PMV62Z.js";
15
-
16
- // node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveCredentialSource.js
17
- var resolveCredentialSource = (credentialSource, profileName, logger) => {
18
- const sourceProvidersMap = {
19
- EcsContainer: async (options) => {
20
- const { fromHttp } = await import("./dist-es-4VSEUPMG.js");
21
- const { fromContainerMetadata } = await import("./dist-es-O7YXE2TO.js");
22
- logger?.debug("@aws-sdk/credential-provider-ini - credential_source is EcsContainer");
23
- return async () => chain(fromHttp(options ?? {}), fromContainerMetadata(options))().then(setNamedProvider);
24
- },
25
- Ec2InstanceMetadata: async (options) => {
26
- logger?.debug("@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata");
27
- const { fromInstanceMetadata } = await import("./dist-es-O7YXE2TO.js");
28
- return async () => fromInstanceMetadata(options)().then(setNamedProvider);
29
- },
30
- Environment: async (options) => {
31
- logger?.debug("@aws-sdk/credential-provider-ini - credential_source is Environment");
32
- const { fromEnv } = await import("./dist-es-UEBBJXWA.js");
33
- return async () => fromEnv(options)().then(setNamedProvider);
34
- }
35
- };
36
- if (credentialSource in sourceProvidersMap) {
37
- return sourceProvidersMap[credentialSource];
38
- } else {
39
- throw new CredentialsProviderError(`Unsupported credential source in profile ${profileName}. Got ${credentialSource}, expected EcsContainer or Ec2InstanceMetadata or Environment.`, { logger });
40
- }
41
- };
42
- var setNamedProvider = (creds) => setCredentialFeature(creds, "CREDENTIALS_PROFILE_NAMED_PROVIDER", "p");
43
-
44
- // node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveAssumeRoleCredentials.js
45
- var isAssumeRoleProfile = (arg, { profile = "default", logger } = {}) => {
46
- return Boolean(arg) && typeof arg === "object" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1 && ["undefined", "string"].indexOf(typeof arg.external_id) > -1 && ["undefined", "string"].indexOf(typeof arg.mfa_serial) > -1 && (isAssumeRoleWithSourceProfile(arg, { profile, logger }) || isCredentialSourceProfile(arg, { profile, logger }));
47
- };
48
- var isAssumeRoleWithSourceProfile = (arg, { profile, logger }) => {
49
- const withSourceProfile = typeof arg.source_profile === "string" && typeof arg.credential_source === "undefined";
50
- if (withSourceProfile) {
51
- logger?.debug?.(` ${profile} isAssumeRoleWithSourceProfile source_profile=${arg.source_profile}`);
52
- }
53
- return withSourceProfile;
54
- };
55
- var isCredentialSourceProfile = (arg, { profile, logger }) => {
56
- const withProviderProfile = typeof arg.credential_source === "string" && typeof arg.source_profile === "undefined";
57
- if (withProviderProfile) {
58
- logger?.debug?.(` ${profile} isCredentialSourceProfile credential_source=${arg.credential_source}`);
59
- }
60
- return withProviderProfile;
61
- };
62
- var resolveAssumeRoleCredentials = async (profileName, profiles, options, visitedProfiles = {}) => {
63
- options.logger?.debug("@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)");
64
- const profileData = profiles[profileName];
65
- const { source_profile, region } = profileData;
66
- if (!options.roleAssumer) {
67
- const { getDefaultRoleAssumer } = await import("./sts-VPLY2J63.js");
68
- options.roleAssumer = getDefaultRoleAssumer({
69
- ...options.clientConfig,
70
- credentialProviderLogger: options.logger,
71
- parentClientConfig: {
72
- ...options?.parentClientConfig,
73
- region: region ?? options?.parentClientConfig?.region
74
- }
75
- }, options.clientPlugins);
76
- }
77
- if (source_profile && source_profile in visitedProfiles) {
78
- throw new CredentialsProviderError(`Detected a cycle attempting to resolve credentials for profile ${getProfileName(options)}. Profiles visited: ` + Object.keys(visitedProfiles).join(", "), { logger: options.logger });
79
- }
80
- options.logger?.debug(`@aws-sdk/credential-provider-ini - finding credential resolver using ${source_profile ? `source_profile=[${source_profile}]` : `profile=[${profileName}]`}`);
81
- const sourceCredsProvider = source_profile ? resolveProfileData(source_profile, profiles, options, {
82
- ...visitedProfiles,
83
- [source_profile]: true
84
- }, isCredentialSourceWithoutRoleArn(profiles[source_profile] ?? {})) : (await resolveCredentialSource(profileData.credential_source, profileName, options.logger)(options))();
85
- if (isCredentialSourceWithoutRoleArn(profileData)) {
86
- return sourceCredsProvider.then((creds) => setCredentialFeature(creds, "CREDENTIALS_PROFILE_SOURCE_PROFILE", "o"));
87
- } else {
88
- const params = {
89
- RoleArn: profileData.role_arn,
90
- RoleSessionName: profileData.role_session_name || `aws-sdk-js-${Date.now()}`,
91
- ExternalId: profileData.external_id,
92
- DurationSeconds: parseInt(profileData.duration_seconds || "3600", 10)
93
- };
94
- const { mfa_serial } = profileData;
95
- if (mfa_serial) {
96
- if (!options.mfaCodeProvider) {
97
- throw new CredentialsProviderError(`Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`, { logger: options.logger, tryNextLink: false });
98
- }
99
- params.SerialNumber = mfa_serial;
100
- params.TokenCode = await options.mfaCodeProvider(mfa_serial);
101
- }
102
- const sourceCreds = await sourceCredsProvider;
103
- return options.roleAssumer(sourceCreds, params).then((creds) => setCredentialFeature(creds, "CREDENTIALS_PROFILE_SOURCE_PROFILE", "o"));
104
- }
105
- };
106
- var isCredentialSourceWithoutRoleArn = (section) => {
107
- return !section.role_arn && !!section.credential_source;
108
- };
109
-
110
- // node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveProcessCredentials.js
111
- var isProcessProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string";
112
- var resolveProcessCredentials = async (options, profile) => import("./dist-es-5G2D4IRG.js").then(({ fromProcess }) => fromProcess({
113
- ...options,
114
- profile
115
- })().then((creds) => setCredentialFeature(creds, "CREDENTIALS_PROFILE_PROCESS", "v")));
116
-
117
- // node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveSsoCredentials.js
118
- var resolveSsoCredentials = async (profile, profileData, options = {}) => {
119
- const { fromSSO } = await import("./dist-es-RVUNLU7U.js");
120
- return fromSSO({
121
- profile,
122
- logger: options.logger,
123
- parentClientConfig: options.parentClientConfig,
124
- clientConfig: options.clientConfig
125
- })().then((creds) => {
126
- if (profileData.sso_session) {
127
- return setCredentialFeature(creds, "CREDENTIALS_PROFILE_SSO", "r");
128
- } else {
129
- return setCredentialFeature(creds, "CREDENTIALS_PROFILE_SSO_LEGACY", "t");
130
- }
131
- });
132
- };
133
- var isSsoProfile = (arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string");
134
-
135
- // node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveStaticCredentials.js
136
- var isStaticCredsProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.aws_access_key_id === "string" && typeof arg.aws_secret_access_key === "string" && ["undefined", "string"].indexOf(typeof arg.aws_session_token) > -1 && ["undefined", "string"].indexOf(typeof arg.aws_account_id) > -1;
137
- var resolveStaticCredentials = async (profile, options) => {
138
- options?.logger?.debug("@aws-sdk/credential-provider-ini - resolveStaticCredentials");
139
- const credentials = {
140
- accessKeyId: profile.aws_access_key_id,
141
- secretAccessKey: profile.aws_secret_access_key,
142
- sessionToken: profile.aws_session_token,
143
- ...profile.aws_credential_scope && { credentialScope: profile.aws_credential_scope },
144
- ...profile.aws_account_id && { accountId: profile.aws_account_id }
145
- };
146
- return setCredentialFeature(credentials, "CREDENTIALS_PROFILE", "n");
147
- };
148
-
149
- // node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveWebIdentityCredentials.js
150
- var isWebIdentityProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.web_identity_token_file === "string" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1;
151
- var resolveWebIdentityCredentials = async (profile, options) => import("./dist-es-6PYQFA7S.js").then(({ fromTokenFile }) => fromTokenFile({
152
- webIdentityTokenFile: profile.web_identity_token_file,
153
- roleArn: profile.role_arn,
154
- roleSessionName: profile.role_session_name,
155
- roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,
156
- logger: options.logger,
157
- parentClientConfig: options.parentClientConfig
158
- })().then((creds) => setCredentialFeature(creds, "CREDENTIALS_PROFILE_STS_WEB_ID_TOKEN", "q")));
159
-
160
- // node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveProfileData.js
161
- var resolveProfileData = async (profileName, profiles, options, visitedProfiles = {}, isAssumeRoleRecursiveCall = false) => {
162
- const data = profiles[profileName];
163
- if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {
164
- return resolveStaticCredentials(data, options);
165
- }
166
- if (isAssumeRoleRecursiveCall || isAssumeRoleProfile(data, { profile: profileName, logger: options.logger })) {
167
- return resolveAssumeRoleCredentials(profileName, profiles, options, visitedProfiles);
168
- }
169
- if (isStaticCredsProfile(data)) {
170
- return resolveStaticCredentials(data, options);
171
- }
172
- if (isWebIdentityProfile(data)) {
173
- return resolveWebIdentityCredentials(data, options);
174
- }
175
- if (isProcessProfile(data)) {
176
- return resolveProcessCredentials(options, profileName);
177
- }
178
- if (isSsoProfile(data)) {
179
- return await resolveSsoCredentials(profileName, data, options);
180
- }
181
- throw new CredentialsProviderError(`Could not resolve credentials using profile: [${profileName}] in configuration/credentials file(s).`, { logger: options.logger });
182
- };
183
-
184
- // node_modules/@aws-sdk/credential-provider-ini/dist-es/fromIni.js
185
- var fromIni = (_init = {}) => async ({ callerClientConfig } = {}) => {
186
- const init = {
187
- ..._init,
188
- parentClientConfig: {
189
- ...callerClientConfig,
190
- ..._init.parentClientConfig
191
- }
192
- };
193
- init.logger?.debug("@aws-sdk/credential-provider-ini - fromIni");
194
- const profiles = await parseKnownFiles(init);
195
- return resolveProfileData(getProfileName({
196
- profile: _init.profile ?? callerClientConfig?.profile
197
- }), profiles, init);
198
- };
199
- export {
200
- fromIni
201
- };
202
- //# sourceMappingURL=dist-es-XS4DOSVC.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveCredentialSource.js","../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveAssumeRoleCredentials.js","../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveProcessCredentials.js","../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveSsoCredentials.js","../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveStaticCredentials.js","../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveWebIdentityCredentials.js","../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveProfileData.js","../../node_modules/@aws-sdk/credential-provider-ini/dist-es/fromIni.js"],"sourcesContent":["import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { chain, CredentialsProviderError } from \"@smithy/property-provider\";\nexport const resolveCredentialSource = (credentialSource, profileName, logger) => {\n const sourceProvidersMap = {\n EcsContainer: async (options) => {\n const { fromHttp } = await import(\"@aws-sdk/credential-provider-http\");\n const { fromContainerMetadata } = await import(\"@smithy/credential-provider-imds\");\n logger?.debug(\"@aws-sdk/credential-provider-ini - credential_source is EcsContainer\");\n return async () => chain(fromHttp(options ?? {}), fromContainerMetadata(options))().then(setNamedProvider);\n },\n Ec2InstanceMetadata: async (options) => {\n logger?.debug(\"@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata\");\n const { fromInstanceMetadata } = await import(\"@smithy/credential-provider-imds\");\n return async () => fromInstanceMetadata(options)().then(setNamedProvider);\n },\n Environment: async (options) => {\n logger?.debug(\"@aws-sdk/credential-provider-ini - credential_source is Environment\");\n const { fromEnv } = await import(\"@aws-sdk/credential-provider-env\");\n return async () => fromEnv(options)().then(setNamedProvider);\n },\n };\n if (credentialSource in sourceProvidersMap) {\n return sourceProvidersMap[credentialSource];\n }\n else {\n throw new CredentialsProviderError(`Unsupported credential source in profile ${profileName}. Got ${credentialSource}, ` +\n `expected EcsContainer or Ec2InstanceMetadata or Environment.`, { logger });\n }\n};\nconst setNamedProvider = (creds) => setCredentialFeature(creds, \"CREDENTIALS_PROFILE_NAMED_PROVIDER\", \"p\");\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getProfileName } from \"@smithy/shared-ini-file-loader\";\nimport { resolveCredentialSource } from \"./resolveCredentialSource\";\nimport { resolveProfileData } from \"./resolveProfileData\";\nexport const isAssumeRoleProfile = (arg, { profile = \"default\", logger } = {}) => {\n return (Boolean(arg) &&\n typeof arg === \"object\" &&\n typeof arg.role_arn === \"string\" &&\n [\"undefined\", \"string\"].indexOf(typeof arg.role_session_name) > -1 &&\n [\"undefined\", \"string\"].indexOf(typeof arg.external_id) > -1 &&\n [\"undefined\", \"string\"].indexOf(typeof arg.mfa_serial) > -1 &&\n (isAssumeRoleWithSourceProfile(arg, { profile, logger }) || isCredentialSourceProfile(arg, { profile, logger })));\n};\nconst isAssumeRoleWithSourceProfile = (arg, { profile, logger }) => {\n const withSourceProfile = typeof arg.source_profile === \"string\" && typeof arg.credential_source === \"undefined\";\n if (withSourceProfile) {\n logger?.debug?.(` ${profile} isAssumeRoleWithSourceProfile source_profile=${arg.source_profile}`);\n }\n return withSourceProfile;\n};\nconst isCredentialSourceProfile = (arg, { profile, logger }) => {\n const withProviderProfile = typeof arg.credential_source === \"string\" && typeof arg.source_profile === \"undefined\";\n if (withProviderProfile) {\n logger?.debug?.(` ${profile} isCredentialSourceProfile credential_source=${arg.credential_source}`);\n }\n return withProviderProfile;\n};\nexport const resolveAssumeRoleCredentials = async (profileName, profiles, options, visitedProfiles = {}) => {\n options.logger?.debug(\"@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)\");\n const profileData = profiles[profileName];\n const { source_profile, region } = profileData;\n if (!options.roleAssumer) {\n const { getDefaultRoleAssumer } = await import(\"@aws-sdk/nested-clients/sts\");\n options.roleAssumer = getDefaultRoleAssumer({\n ...options.clientConfig,\n credentialProviderLogger: options.logger,\n parentClientConfig: {\n ...options?.parentClientConfig,\n region: region ?? options?.parentClientConfig?.region,\n },\n }, options.clientPlugins);\n }\n if (source_profile && source_profile in visitedProfiles) {\n throw new CredentialsProviderError(`Detected a cycle attempting to resolve credentials for profile` +\n ` ${getProfileName(options)}. Profiles visited: ` +\n Object.keys(visitedProfiles).join(\", \"), { logger: options.logger });\n }\n options.logger?.debug(`@aws-sdk/credential-provider-ini - finding credential resolver using ${source_profile ? `source_profile=[${source_profile}]` : `profile=[${profileName}]`}`);\n const sourceCredsProvider = source_profile\n ? resolveProfileData(source_profile, profiles, options, {\n ...visitedProfiles,\n [source_profile]: true,\n }, isCredentialSourceWithoutRoleArn(profiles[source_profile] ?? {}))\n : (await resolveCredentialSource(profileData.credential_source, profileName, options.logger)(options))();\n if (isCredentialSourceWithoutRoleArn(profileData)) {\n return sourceCredsProvider.then((creds) => setCredentialFeature(creds, \"CREDENTIALS_PROFILE_SOURCE_PROFILE\", \"o\"));\n }\n else {\n const params = {\n RoleArn: profileData.role_arn,\n RoleSessionName: profileData.role_session_name || `aws-sdk-js-${Date.now()}`,\n ExternalId: profileData.external_id,\n DurationSeconds: parseInt(profileData.duration_seconds || \"3600\", 10),\n };\n const { mfa_serial } = profileData;\n if (mfa_serial) {\n if (!options.mfaCodeProvider) {\n throw new CredentialsProviderError(`Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`, { logger: options.logger, tryNextLink: false });\n }\n params.SerialNumber = mfa_serial;\n params.TokenCode = await options.mfaCodeProvider(mfa_serial);\n }\n const sourceCreds = await sourceCredsProvider;\n return options.roleAssumer(sourceCreds, params).then((creds) => setCredentialFeature(creds, \"CREDENTIALS_PROFILE_SOURCE_PROFILE\", \"o\"));\n }\n};\nconst isCredentialSourceWithoutRoleArn = (section) => {\n return !section.role_arn && !!section.credential_source;\n};\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nexport const isProcessProfile = (arg) => Boolean(arg) && typeof arg === \"object\" && typeof arg.credential_process === \"string\";\nexport const resolveProcessCredentials = async (options, profile) => import(\"@aws-sdk/credential-provider-process\").then(({ fromProcess }) => fromProcess({\n ...options,\n profile,\n})().then((creds) => setCredentialFeature(creds, \"CREDENTIALS_PROFILE_PROCESS\", \"v\")));\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nexport const resolveSsoCredentials = async (profile, profileData, options = {}) => {\n const { fromSSO } = await import(\"@aws-sdk/credential-provider-sso\");\n return fromSSO({\n profile,\n logger: options.logger,\n parentClientConfig: options.parentClientConfig,\n clientConfig: options.clientConfig,\n })().then((creds) => {\n if (profileData.sso_session) {\n return setCredentialFeature(creds, \"CREDENTIALS_PROFILE_SSO\", \"r\");\n }\n else {\n return setCredentialFeature(creds, \"CREDENTIALS_PROFILE_SSO_LEGACY\", \"t\");\n }\n });\n};\nexport const isSsoProfile = (arg) => arg &&\n (typeof arg.sso_start_url === \"string\" ||\n typeof arg.sso_account_id === \"string\" ||\n typeof arg.sso_session === \"string\" ||\n typeof arg.sso_region === \"string\" ||\n typeof arg.sso_role_name === \"string\");\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nexport const isStaticCredsProfile = (arg) => Boolean(arg) &&\n typeof arg === \"object\" &&\n typeof arg.aws_access_key_id === \"string\" &&\n typeof arg.aws_secret_access_key === \"string\" &&\n [\"undefined\", \"string\"].indexOf(typeof arg.aws_session_token) > -1 &&\n [\"undefined\", \"string\"].indexOf(typeof arg.aws_account_id) > -1;\nexport const resolveStaticCredentials = async (profile, options) => {\n options?.logger?.debug(\"@aws-sdk/credential-provider-ini - resolveStaticCredentials\");\n const credentials = {\n accessKeyId: profile.aws_access_key_id,\n secretAccessKey: profile.aws_secret_access_key,\n sessionToken: profile.aws_session_token,\n ...(profile.aws_credential_scope && { credentialScope: profile.aws_credential_scope }),\n ...(profile.aws_account_id && { accountId: profile.aws_account_id }),\n };\n return setCredentialFeature(credentials, \"CREDENTIALS_PROFILE\", \"n\");\n};\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nexport const isWebIdentityProfile = (arg) => Boolean(arg) &&\n typeof arg === \"object\" &&\n typeof arg.web_identity_token_file === \"string\" &&\n typeof arg.role_arn === \"string\" &&\n [\"undefined\", \"string\"].indexOf(typeof arg.role_session_name) > -1;\nexport const resolveWebIdentityCredentials = async (profile, options) => import(\"@aws-sdk/credential-provider-web-identity\").then(({ fromTokenFile }) => fromTokenFile({\n webIdentityTokenFile: profile.web_identity_token_file,\n roleArn: profile.role_arn,\n roleSessionName: profile.role_session_name,\n roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,\n logger: options.logger,\n parentClientConfig: options.parentClientConfig,\n})().then((creds) => setCredentialFeature(creds, \"CREDENTIALS_PROFILE_STS_WEB_ID_TOKEN\", \"q\")));\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { isAssumeRoleProfile, resolveAssumeRoleCredentials } from \"./resolveAssumeRoleCredentials\";\nimport { isProcessProfile, resolveProcessCredentials } from \"./resolveProcessCredentials\";\nimport { isSsoProfile, resolveSsoCredentials } from \"./resolveSsoCredentials\";\nimport { isStaticCredsProfile, resolveStaticCredentials } from \"./resolveStaticCredentials\";\nimport { isWebIdentityProfile, resolveWebIdentityCredentials } from \"./resolveWebIdentityCredentials\";\nexport const resolveProfileData = async (profileName, profiles, options, visitedProfiles = {}, isAssumeRoleRecursiveCall = false) => {\n const data = profiles[profileName];\n if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {\n return resolveStaticCredentials(data, options);\n }\n if (isAssumeRoleRecursiveCall || isAssumeRoleProfile(data, { profile: profileName, logger: options.logger })) {\n return resolveAssumeRoleCredentials(profileName, profiles, options, visitedProfiles);\n }\n if (isStaticCredsProfile(data)) {\n return resolveStaticCredentials(data, options);\n }\n if (isWebIdentityProfile(data)) {\n return resolveWebIdentityCredentials(data, options);\n }\n if (isProcessProfile(data)) {\n return resolveProcessCredentials(options, profileName);\n }\n if (isSsoProfile(data)) {\n return await resolveSsoCredentials(profileName, data, options);\n }\n throw new CredentialsProviderError(`Could not resolve credentials using profile: [${profileName}] in configuration/credentials file(s).`, { logger: options.logger });\n};\n","import { getProfileName, parseKnownFiles } from \"@smithy/shared-ini-file-loader\";\nimport { resolveProfileData } from \"./resolveProfileData\";\nexport const fromIni = (_init = {}) => async ({ callerClientConfig } = {}) => {\n const init = {\n ..._init,\n parentClientConfig: {\n ...callerClientConfig,\n ..._init.parentClientConfig,\n },\n };\n init.logger?.debug(\"@aws-sdk/credential-provider-ini - fromIni\");\n const profiles = await parseKnownFiles(init);\n return resolveProfileData(getProfileName({\n profile: _init.profile ?? callerClientConfig?.profile,\n }), profiles, init);\n};\n"],"mappings":"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","names":[]}