@rockcarver/frodo-lib 2.0.0-3 → 2.0.0-4
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/CHANGELOG.md +5 -1
- package/cjs/api/AgentApi.js +64 -16
- package/cjs/api/AgentApi.js.map +1 -1
- package/cjs/api/ApiTypes.js +0 -55
- package/cjs/api/ApiTypes.js.map +1 -1
- package/cjs/api/BaseApi.js +21 -11
- package/cjs/api/BaseApi.js.map +1 -1
- package/cjs/api/cloud/SecretsApi.js +7 -14
- package/cjs/api/cloud/SecretsApi.js.map +1 -1
- package/cjs/api/cloud/SecretsApi.test.js.map +1 -1
- package/cjs/ops/AdminOps.js +254 -60
- package/cjs/ops/AdminOps.js.map +1 -1
- package/cjs/ops/AgentOps.js +352 -108
- package/cjs/ops/AgentOps.js.map +1 -1
- package/cjs/ops/AuthenticateOps.js +253 -60
- package/cjs/ops/AuthenticateOps.js.map +1 -1
- package/cjs/ops/CirclesOfTrustOps.js +16 -4
- package/cjs/ops/CirclesOfTrustOps.js.map +1 -1
- package/cjs/ops/ConnectionProfileOps.js +163 -40
- package/cjs/ops/ConnectionProfileOps.js.map +1 -1
- package/cjs/ops/EmailTemplateOps.js +7 -1
- package/cjs/ops/EmailTemplateOps.js.map +1 -1
- package/cjs/ops/IdpOps.js +55 -12
- package/cjs/ops/IdpOps.js.map +1 -1
- package/cjs/ops/JourneyOps.js +645 -136
- package/cjs/ops/JourneyOps.js.map +1 -1
- package/cjs/ops/NodeOps.js +96 -24
- package/cjs/ops/NodeOps.js.map +1 -1
- package/cjs/ops/OAuth2ClientOps.js +45 -11
- package/cjs/ops/OAuth2ClientOps.js.map +1 -1
- package/cjs/ops/OpsTypes.js +0 -23
- package/cjs/ops/OpsTypes.js.map +1 -1
- package/cjs/ops/OrganizationOps.js +44 -10
- package/cjs/ops/OrganizationOps.js.map +1 -1
- package/cjs/ops/PolicyOps.js +86 -24
- package/cjs/ops/PolicyOps.js.map +1 -1
- package/cjs/ops/PolicySetOps.js +72 -18
- package/cjs/ops/PolicySetOps.js.map +1 -1
- package/cjs/ops/ResourceTypeOps.js +24 -6
- package/cjs/ops/ResourceTypeOps.js.map +1 -1
- package/cjs/ops/Saml2Ops.js +120 -33
- package/cjs/ops/Saml2Ops.js.map +1 -1
- package/cjs/ops/Saml2Ops.test.js.map +1 -1
- package/cjs/ops/ScriptOps.js +73 -17
- package/cjs/ops/ScriptOps.js.map +1 -1
- package/cjs/ops/ServiceOps.js +152 -35
- package/cjs/ops/ServiceOps.js.map +1 -1
- package/cjs/ops/ThemeOps.js +20 -5
- package/cjs/ops/ThemeOps.js.map +1 -1
- package/cjs/ops/cloud/FeatureOps.js +4 -1
- package/cjs/ops/cloud/FeatureOps.js.map +1 -1
- package/cjs/ops/cloud/SecretsOps.js.map +1 -1
- package/cjs/ops/cloud/ServiceAccountOps.js +24 -6
- package/cjs/ops/cloud/ServiceAccountOps.js.map +1 -1
- package/cjs/ops/cloud/StartupOps.js +55 -11
- package/cjs/ops/cloud/StartupOps.js.map +1 -1
- package/cjs/ops/utils/Console.js +47 -22
- package/cjs/ops/utils/Console.js.map +1 -1
- package/cjs/ops/utils/DataProtection.js +12 -5
- package/cjs/ops/utils/DataProtection.js.map +1 -1
- package/cjs/ops/utils/DataProtection.test.js.map +1 -1
- package/cjs/ops/utils/ExportImportUtils.js +15 -8
- package/cjs/ops/utils/ExportImportUtils.js.map +1 -1
- package/cjs/ops/utils/ScriptValidationUtils.js +33 -8
- package/cjs/ops/utils/ScriptValidationUtils.js.map +1 -1
- package/cjs/ops/utils/ScriptValidationUtils.test.js.map +1 -1
- package/cjs/utils/SetupPollyForFrodoLib.js +67 -19
- package/cjs/utils/SetupPollyForFrodoLib.js.map +1 -1
- package/esm/api/AgentApi.mjs +64 -16
- package/esm/api/ApiTypes.mjs +1 -50
- package/esm/api/BaseApi.mjs +21 -11
- package/esm/api/cloud/SecretsApi.mjs +0 -5
- package/esm/api/cloud/SecretsApi.test.mjs +3 -3
- package/esm/ops/AdminOps.mjs +254 -60
- package/esm/ops/AgentOps.mjs +352 -104
- package/esm/ops/AuthenticateOps.mjs +253 -60
- package/esm/ops/CirclesOfTrustOps.mjs +16 -4
- package/esm/ops/ConnectionProfileOps.mjs +163 -40
- package/esm/ops/EmailTemplateOps.mjs +5 -0
- package/esm/ops/IdpOps.mjs +55 -12
- package/esm/ops/JourneyOps.mjs +639 -132
- package/esm/ops/NodeOps.mjs +90 -19
- package/esm/ops/OAuth2ClientOps.mjs +45 -11
- package/esm/ops/OpsTypes.mjs +1 -22
- package/esm/ops/OrganizationOps.mjs +44 -10
- package/esm/ops/PolicyOps.mjs +86 -24
- package/esm/ops/PolicySetOps.mjs +72 -18
- package/esm/ops/ResourceTypeOps.mjs +24 -6
- package/esm/ops/Saml2Ops.mjs +120 -33
- package/esm/ops/Saml2Ops.test.mjs +10 -11
- package/esm/ops/ScriptOps.mjs +73 -17
- package/esm/ops/ServiceOps.mjs +152 -35
- package/esm/ops/ThemeOps.mjs +20 -5
- package/esm/ops/cloud/FeatureOps.mjs +4 -1
- package/esm/ops/cloud/ServiceAccountOps.mjs +24 -6
- package/esm/ops/cloud/StartupOps.mjs +55 -11
- package/esm/ops/utils/Console.mjs +33 -9
- package/esm/ops/utils/DataProtection.mjs +9 -2
- package/esm/ops/utils/DataProtection.test.mjs +8 -2
- package/esm/ops/utils/ExportImportUtils.mjs +15 -8
- package/esm/ops/utils/ScriptValidationUtils.mjs +30 -8
- package/esm/ops/utils/ScriptValidationUtils.test.mjs +14 -3
- package/esm/utils/SetupPollyForFrodoLib.mjs +64 -18
- package/package.json +1 -1
- package/types/api/AgentApi.d.ts +6 -6
- package/types/api/AgentApi.d.ts.map +1 -1
- package/types/api/ApiTypes.d.ts +12 -49
- package/types/api/ApiTypes.d.ts.map +1 -1
- package/types/api/BaseApi.d.ts.map +1 -1
- package/types/api/cloud/SecretsApi.d.ts +1 -4
- package/types/api/cloud/SecretsApi.d.ts.map +1 -1
- package/types/ops/AdminOps.d.ts.map +1 -1
- package/types/ops/AgentOps.d.ts +3 -6
- package/types/ops/AgentOps.d.ts.map +1 -1
- package/types/ops/AuthenticateOps.d.ts.map +1 -1
- package/types/ops/CirclesOfTrustOps.d.ts.map +1 -1
- package/types/ops/ConnectionProfileOps.d.ts.map +1 -1
- package/types/ops/EmailTemplateOps.d.ts +4 -0
- package/types/ops/EmailTemplateOps.d.ts.map +1 -1
- package/types/ops/IdpOps.d.ts.map +1 -1
- package/types/ops/JourneyOps.d.ts +10 -4
- package/types/ops/JourneyOps.d.ts.map +1 -1
- package/types/ops/NodeOps.d.ts +10 -4
- package/types/ops/NodeOps.d.ts.map +1 -1
- package/types/ops/OAuth2ClientOps.d.ts.map +1 -1
- package/types/ops/OpsTypes.d.ts +2 -12
- package/types/ops/OpsTypes.d.ts.map +1 -1
- package/types/ops/OrganizationOps.d.ts.map +1 -1
- package/types/ops/PolicyOps.d.ts.map +1 -1
- package/types/ops/PolicySetOps.d.ts.map +1 -1
- package/types/ops/ResourceTypeOps.d.ts.map +1 -1
- package/types/ops/Saml2Ops.d.ts.map +1 -1
- package/types/ops/ScriptOps.d.ts.map +1 -1
- package/types/ops/ServiceOps.d.ts.map +1 -1
- package/types/ops/ThemeOps.d.ts.map +1 -1
- package/types/ops/cloud/FeatureOps.d.ts.map +1 -1
- package/types/ops/cloud/SecretsOps.d.ts +1 -1
- package/types/ops/cloud/SecretsOps.d.ts.map +1 -1
- package/types/ops/cloud/ServiceAccountOps.d.ts.map +1 -1
- package/types/ops/cloud/StartupOps.d.ts.map +1 -1
- package/types/ops/utils/Console.d.ts +34 -7
- package/types/ops/utils/Console.d.ts.map +1 -1
- package/types/ops/utils/DataProtection.d.ts +5 -1
- package/types/ops/utils/DataProtection.d.ts.map +1 -1
- package/types/ops/utils/ExportImportUtils.d.ts.map +1 -1
- package/types/ops/utils/ScriptValidationUtils.d.ts +14 -4
- package/types/ops/utils/ScriptValidationUtils.d.ts.map +1 -1
- package/types/utils/SetupPollyForFrodoLib.d.ts +5 -1
- package/types/utils/SetupPollyForFrodoLib.d.ts.map +1 -1
|
@@ -89,31 +89,49 @@ function _determineCookieName() {
|
|
|
89
89
|
var data = yield (0, _ServerInfoApi.getServerInfo)({
|
|
90
90
|
state
|
|
91
91
|
});
|
|
92
|
-
(0, _Console.debugMessage)(
|
|
92
|
+
(0, _Console.debugMessage)({
|
|
93
|
+
message: "AuthenticateOps.determineCookieName: cookieName=".concat(data.cookieName),
|
|
94
|
+
state
|
|
95
|
+
});
|
|
93
96
|
return data.cookieName;
|
|
94
97
|
});
|
|
95
98
|
return _determineCookieName.apply(this, arguments);
|
|
96
99
|
}
|
|
97
100
|
function checkAndHandle2FA(payload, state) {
|
|
98
|
-
(0, _Console.debugMessage)(
|
|
101
|
+
(0, _Console.debugMessage)({
|
|
102
|
+
message: "AuthenticateOps.checkAndHandle2FA: start",
|
|
103
|
+
state
|
|
104
|
+
});
|
|
99
105
|
// let skippable = false;
|
|
100
106
|
if ('callbacks' in payload) {
|
|
101
107
|
for (var callback of payload.callbacks) {
|
|
102
108
|
// select localAuthentication if Admin Federation is enabled
|
|
103
109
|
if (callback.type === 'SelectIdPCallback') {
|
|
104
|
-
(0, _Console.debugMessage)(
|
|
110
|
+
(0, _Console.debugMessage)({
|
|
111
|
+
message: "AuthenticateOps.checkAndHandle2FA: Admin federation enabled. Allowed providers:",
|
|
112
|
+
state
|
|
113
|
+
});
|
|
105
114
|
var localAuth = false;
|
|
106
115
|
for (var value of callback.output[0].value) {
|
|
107
|
-
(0, _Console.debugMessage)(
|
|
116
|
+
(0, _Console.debugMessage)({
|
|
117
|
+
message: "".concat(value.provider),
|
|
118
|
+
state
|
|
119
|
+
});
|
|
108
120
|
if (value.provider === 'localAuthentication') {
|
|
109
121
|
localAuth = true;
|
|
110
122
|
}
|
|
111
123
|
}
|
|
112
124
|
if (localAuth) {
|
|
113
|
-
(0, _Console.debugMessage)(
|
|
125
|
+
(0, _Console.debugMessage)({
|
|
126
|
+
message: "local auth allowed",
|
|
127
|
+
state
|
|
128
|
+
});
|
|
114
129
|
callback.input[0].value = 'localAuthentication';
|
|
115
130
|
} else {
|
|
116
|
-
(0, _Console.debugMessage)(
|
|
131
|
+
(0, _Console.debugMessage)({
|
|
132
|
+
message: "local auth NOT allowed",
|
|
133
|
+
state
|
|
134
|
+
});
|
|
117
135
|
}
|
|
118
136
|
}
|
|
119
137
|
if (callback.type === 'HiddenValueCallback') {
|
|
@@ -134,7 +152,10 @@ function checkAndHandle2FA(payload, state) {
|
|
|
134
152
|
|
|
135
153
|
if (callback.input[0].value.includes('webAuthnOutcome')) {
|
|
136
154
|
// webauthn!!!
|
|
137
|
-
(0, _Console.debugMessage)(
|
|
155
|
+
(0, _Console.debugMessage)({
|
|
156
|
+
message: "AuthenticateOps.checkAndHandle2FA: end [need2fa=true, unsupported factor: webauthn]",
|
|
157
|
+
state
|
|
158
|
+
});
|
|
138
159
|
return {
|
|
139
160
|
nextStep: false,
|
|
140
161
|
need2fa: true,
|
|
@@ -147,11 +168,20 @@ function checkAndHandle2FA(payload, state) {
|
|
|
147
168
|
if (callback.type === 'NameCallback') {
|
|
148
169
|
if (callback.output[0].value.includes('code')) {
|
|
149
170
|
// skippable = false;
|
|
150
|
-
(0, _Console.debugMessage)(
|
|
151
|
-
|
|
171
|
+
(0, _Console.debugMessage)({
|
|
172
|
+
message: "AuthenticateOps.checkAndHandle2FA: need2fa=true, skippable=false",
|
|
173
|
+
state
|
|
174
|
+
});
|
|
175
|
+
(0, _Console.printMessage)({
|
|
176
|
+
message: '2FA is enabled and required for this user...',
|
|
177
|
+
state
|
|
178
|
+
});
|
|
152
179
|
var code = _readlineSync.default.question("".concat(callback.output[0].value, ": "));
|
|
153
180
|
callback.input[0].value = code;
|
|
154
|
-
(0, _Console.debugMessage)(
|
|
181
|
+
(0, _Console.debugMessage)({
|
|
182
|
+
message: "AuthenticateOps.checkAndHandle2FA: end [need2fa=true, skippable=false, factor=Code]",
|
|
183
|
+
state
|
|
184
|
+
});
|
|
155
185
|
return {
|
|
156
186
|
nextStep: true,
|
|
157
187
|
need2fa: true,
|
|
@@ -169,7 +199,10 @@ function checkAndHandle2FA(payload, state) {
|
|
|
169
199
|
callback.input[0].value = state.getPassword();
|
|
170
200
|
}
|
|
171
201
|
}
|
|
172
|
-
(0, _Console.debugMessage)(
|
|
202
|
+
(0, _Console.debugMessage)({
|
|
203
|
+
message: "AuthenticateOps.checkAndHandle2FA: end [need2fa=false]",
|
|
204
|
+
state
|
|
205
|
+
});
|
|
173
206
|
// debugMessage(payload);
|
|
174
207
|
return {
|
|
175
208
|
nextStep: true,
|
|
@@ -179,7 +212,10 @@ function checkAndHandle2FA(payload, state) {
|
|
|
179
212
|
payload
|
|
180
213
|
};
|
|
181
214
|
}
|
|
182
|
-
(0, _Console.debugMessage)(
|
|
215
|
+
(0, _Console.debugMessage)({
|
|
216
|
+
message: "AuthenticateOps.checkAndHandle2FA: end [need2fa=false]",
|
|
217
|
+
state
|
|
218
|
+
});
|
|
183
219
|
// debugMessage(payload);
|
|
184
220
|
return {
|
|
185
221
|
nextStep: false,
|
|
@@ -244,7 +280,10 @@ function _determineDeploymentType() {
|
|
|
244
280
|
var _e$response, _e$response$headers, _e$response$headers$l;
|
|
245
281
|
// debugMessage(e.response);
|
|
246
282
|
if (((_e$response = e.response) === null || _e$response === void 0 ? void 0 : _e$response.status) === 302 && ((_e$response$headers = e.response.headers) === null || _e$response$headers === void 0 ? void 0 : (_e$response$headers$l = _e$response$headers.location) === null || _e$response$headers$l === void 0 ? void 0 : _e$response$headers$l.indexOf('code=')) > -1) {
|
|
247
|
-
(0, _Console.verboseMessage)(
|
|
283
|
+
(0, _Console.verboseMessage)({
|
|
284
|
+
message: "ForgeRock Identity Cloud"['brightCyan'] + " detected.",
|
|
285
|
+
state
|
|
286
|
+
});
|
|
248
287
|
deploymentType = globalConfig.CLOUD_DEPLOYMENT_TYPE_KEY;
|
|
249
288
|
} else {
|
|
250
289
|
try {
|
|
@@ -259,10 +298,16 @@ function _determineDeploymentType() {
|
|
|
259
298
|
var _ex$response, _ex$response$headers, _ex$response$headers$;
|
|
260
299
|
if (((_ex$response = ex.response) === null || _ex$response === void 0 ? void 0 : _ex$response.status) === 302 && ((_ex$response$headers = ex.response.headers) === null || _ex$response$headers === void 0 ? void 0 : (_ex$response$headers$ = _ex$response$headers.location) === null || _ex$response$headers$ === void 0 ? void 0 : _ex$response$headers$.indexOf('code=')) > -1) {
|
|
261
300
|
adminClientId = forgeopsClientId;
|
|
262
|
-
(0, _Console.verboseMessage)(
|
|
301
|
+
(0, _Console.verboseMessage)({
|
|
302
|
+
message: "ForgeOps deployment"['brightCyan'] + " detected.",
|
|
303
|
+
state
|
|
304
|
+
});
|
|
263
305
|
deploymentType = globalConfig.FORGEOPS_DEPLOYMENT_TYPE_KEY;
|
|
264
306
|
} else {
|
|
265
|
-
(0, _Console.verboseMessage)(
|
|
307
|
+
(0, _Console.verboseMessage)({
|
|
308
|
+
message: "Classic deployment"['brightCyan'] + " detected.",
|
|
309
|
+
state
|
|
310
|
+
});
|
|
266
311
|
}
|
|
267
312
|
}
|
|
268
313
|
}
|
|
@@ -299,7 +344,10 @@ function authenticate(_x3) {
|
|
|
299
344
|
*/
|
|
300
345
|
function _authenticate() {
|
|
301
346
|
_authenticate = _asyncToGenerator(function* (state) {
|
|
302
|
-
(0, _Console.debugMessage)(
|
|
347
|
+
(0, _Console.debugMessage)({
|
|
348
|
+
message: "AuthenticateOps.authenticate: start",
|
|
349
|
+
state
|
|
350
|
+
});
|
|
303
351
|
var config = {
|
|
304
352
|
headers: {
|
|
305
353
|
'X-OpenAM-Username': state.getUsername(),
|
|
@@ -329,11 +377,17 @@ function _authenticate() {
|
|
|
329
377
|
});
|
|
330
378
|
}
|
|
331
379
|
if ('tokenId' in response) {
|
|
332
|
-
(0, _Console.debugMessage)(
|
|
380
|
+
(0, _Console.debugMessage)({
|
|
381
|
+
message: "AuthenticateOps.authenticate: end [tokenId=".concat(response['tokenId'], "]"),
|
|
382
|
+
state
|
|
383
|
+
});
|
|
333
384
|
return response['tokenId'];
|
|
334
385
|
}
|
|
335
386
|
} while (skip2FA.nextStep && steps < maxSteps);
|
|
336
|
-
(0, _Console.debugMessage)(
|
|
387
|
+
(0, _Console.debugMessage)({
|
|
388
|
+
message: "AuthenticateOps.authenticate: end [no session]",
|
|
389
|
+
state
|
|
390
|
+
});
|
|
337
391
|
return null;
|
|
338
392
|
});
|
|
339
393
|
return _authenticate.apply(this, arguments);
|
|
@@ -369,8 +423,16 @@ function _getAuthCode() {
|
|
|
369
423
|
response = error.response;
|
|
370
424
|
}
|
|
371
425
|
if (response.status < 200 || response.status > 399) {
|
|
372
|
-
(0, _Console.printMessage)(
|
|
373
|
-
|
|
426
|
+
(0, _Console.printMessage)({
|
|
427
|
+
message: 'error getting auth code',
|
|
428
|
+
type: 'error',
|
|
429
|
+
state
|
|
430
|
+
});
|
|
431
|
+
(0, _Console.printMessage)({
|
|
432
|
+
message: 'likely cause: mismatched parameters with OAuth client config',
|
|
433
|
+
type: 'error',
|
|
434
|
+
state
|
|
435
|
+
});
|
|
374
436
|
return null;
|
|
375
437
|
}
|
|
376
438
|
var redirectLocationURL = (_response$headers = response.headers) === null || _response$headers === void 0 ? void 0 : _response$headers.location;
|
|
@@ -378,13 +440,28 @@ function _getAuthCode() {
|
|
|
378
440
|
if ('code' in queryObject) {
|
|
379
441
|
return queryObject.code;
|
|
380
442
|
}
|
|
381
|
-
(0, _Console.printMessage)(
|
|
443
|
+
(0, _Console.printMessage)({
|
|
444
|
+
message: 'auth code not found',
|
|
445
|
+
type: 'error',
|
|
446
|
+
state
|
|
447
|
+
});
|
|
382
448
|
return null;
|
|
383
449
|
} catch (error) {
|
|
384
450
|
var _error$response;
|
|
385
|
-
(0, _Console.printMessage)(
|
|
386
|
-
|
|
387
|
-
|
|
451
|
+
(0, _Console.printMessage)({
|
|
452
|
+
message: "error getting auth code - ".concat(error.message),
|
|
453
|
+
type: 'error',
|
|
454
|
+
state
|
|
455
|
+
});
|
|
456
|
+
(0, _Console.printMessage)({
|
|
457
|
+
message: (_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.data,
|
|
458
|
+
type: 'error',
|
|
459
|
+
state
|
|
460
|
+
});
|
|
461
|
+
(0, _Console.debugMessage)({
|
|
462
|
+
message: error.stack,
|
|
463
|
+
state
|
|
464
|
+
});
|
|
388
465
|
return null;
|
|
389
466
|
}
|
|
390
467
|
});
|
|
@@ -395,7 +472,10 @@ function getAccessTokenForUser(_x8) {
|
|
|
395
472
|
}
|
|
396
473
|
function _getAccessTokenForUser() {
|
|
397
474
|
_getAccessTokenForUser = _asyncToGenerator(function* (state) {
|
|
398
|
-
(0, _Console.debugMessage)(
|
|
475
|
+
(0, _Console.debugMessage)({
|
|
476
|
+
message: "AuthenticateOps.getAccessTokenForUser: start",
|
|
477
|
+
state
|
|
478
|
+
});
|
|
399
479
|
try {
|
|
400
480
|
var verifier = (0, _Base.encodeBase64Url)((0, _crypto.randomBytes)(32));
|
|
401
481
|
var challenge = (0, _Base.encodeBase64Url)((0, _crypto.createHash)('sha256').update(verifier).digest());
|
|
@@ -403,7 +483,11 @@ function _getAccessTokenForUser() {
|
|
|
403
483
|
var redirectURL = _url.default.resolve(state.getHost(), redirectUrlTemplate);
|
|
404
484
|
var authCode = yield getAuthCode(redirectURL, challenge, challengeMethod, state);
|
|
405
485
|
if (authCode == null) {
|
|
406
|
-
(0, _Console.printMessage)(
|
|
486
|
+
(0, _Console.printMessage)({
|
|
487
|
+
message: 'error getting auth code',
|
|
488
|
+
type: 'error',
|
|
489
|
+
state
|
|
490
|
+
});
|
|
407
491
|
return null;
|
|
408
492
|
}
|
|
409
493
|
var response = null;
|
|
@@ -431,16 +515,32 @@ function _getAccessTokenForUser() {
|
|
|
431
515
|
});
|
|
432
516
|
}
|
|
433
517
|
if ('access_token' in response.data) {
|
|
434
|
-
(0, _Console.debugMessage)(
|
|
518
|
+
(0, _Console.debugMessage)({
|
|
519
|
+
message: "AuthenticateOps.getAccessTokenForUser: end with token",
|
|
520
|
+
state
|
|
521
|
+
});
|
|
435
522
|
return response.data.access_token;
|
|
436
523
|
}
|
|
437
|
-
(0, _Console.printMessage)(
|
|
524
|
+
(0, _Console.printMessage)({
|
|
525
|
+
message: 'No access token in response.',
|
|
526
|
+
type: 'error',
|
|
527
|
+
state
|
|
528
|
+
});
|
|
438
529
|
} catch (error) {
|
|
439
530
|
var _error$response2;
|
|
440
|
-
(0, _Console.debugMessage)(
|
|
441
|
-
|
|
531
|
+
(0, _Console.debugMessage)({
|
|
532
|
+
message: "Error getting access token for user: ".concat(error),
|
|
533
|
+
state
|
|
534
|
+
});
|
|
535
|
+
(0, _Console.debugMessage)({
|
|
536
|
+
message: (_error$response2 = error.response) === null || _error$response2 === void 0 ? void 0 : _error$response2.data,
|
|
537
|
+
state
|
|
538
|
+
});
|
|
442
539
|
}
|
|
443
|
-
(0, _Console.debugMessage)(
|
|
540
|
+
(0, _Console.debugMessage)({
|
|
541
|
+
message: "AuthenticateOps.getAccessTokenForUser: end without token",
|
|
542
|
+
state
|
|
543
|
+
});
|
|
444
544
|
return null;
|
|
445
545
|
});
|
|
446
546
|
return _getAccessTokenForUser.apply(this, arguments);
|
|
@@ -489,13 +589,28 @@ function _getAccessTokenForServiceAccount() {
|
|
|
489
589
|
} = _ref;
|
|
490
590
|
saId = saId ? saId : state.getServiceAccountId();
|
|
491
591
|
saJwk = saJwk ? saJwk : state.getServiceAccountJwk();
|
|
492
|
-
(0, _Console.debugMessage)(
|
|
592
|
+
(0, _Console.debugMessage)({
|
|
593
|
+
message: "AuthenticateOps.getAccessTokenForServiceAccount: start",
|
|
594
|
+
state
|
|
595
|
+
});
|
|
493
596
|
var payload = createPayload(saId, state.getHost());
|
|
494
|
-
(0, _Console.debugMessage)(
|
|
495
|
-
|
|
597
|
+
(0, _Console.debugMessage)({
|
|
598
|
+
message: "AuthenticateOps.getAccessTokenForServiceAccount: payload:",
|
|
599
|
+
state
|
|
600
|
+
});
|
|
601
|
+
(0, _Console.debugMessage)({
|
|
602
|
+
message: payload,
|
|
603
|
+
state
|
|
604
|
+
});
|
|
496
605
|
var jwt = yield (0, _JoseOps.createSignedJwtToken)(payload, saJwk);
|
|
497
|
-
(0, _Console.debugMessage)(
|
|
498
|
-
|
|
606
|
+
(0, _Console.debugMessage)({
|
|
607
|
+
message: "AuthenticateOps.getAccessTokenForServiceAccount: jwt:",
|
|
608
|
+
state
|
|
609
|
+
});
|
|
610
|
+
(0, _Console.debugMessage)({
|
|
611
|
+
message: jwt,
|
|
612
|
+
state
|
|
613
|
+
});
|
|
499
614
|
var bodyFormData = "assertion=".concat(jwt, "&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=").concat(serviceAccountScopes);
|
|
500
615
|
var response = yield (0, _OAuth2OIDCApi.accessToken)({
|
|
501
616
|
amBaseUrl: state.getHost(),
|
|
@@ -504,13 +619,28 @@ function _getAccessTokenForServiceAccount() {
|
|
|
504
619
|
state
|
|
505
620
|
});
|
|
506
621
|
if ('access_token' in response.data) {
|
|
507
|
-
(0, _Console.debugMessage)(
|
|
508
|
-
|
|
509
|
-
|
|
622
|
+
(0, _Console.debugMessage)({
|
|
623
|
+
message: "AuthenticateOps.getAccessTokenForServiceAccount: token:",
|
|
624
|
+
state
|
|
625
|
+
});
|
|
626
|
+
(0, _Console.debugMessage)({
|
|
627
|
+
message: response.data.access_token,
|
|
628
|
+
state
|
|
629
|
+
});
|
|
630
|
+
(0, _Console.debugMessage)({
|
|
631
|
+
message: "AuthenticateOps.getAccessTokenForServiceAccount: end",
|
|
632
|
+
state
|
|
633
|
+
});
|
|
510
634
|
return response.data.access_token;
|
|
511
635
|
}
|
|
512
|
-
(0, _Console.debugMessage)(
|
|
513
|
-
|
|
636
|
+
(0, _Console.debugMessage)({
|
|
637
|
+
message: "AuthenticateOps.getAccessTokenForServiceAccount: No access token in response.",
|
|
638
|
+
state
|
|
639
|
+
});
|
|
640
|
+
(0, _Console.debugMessage)({
|
|
641
|
+
message: "AuthenticateOps.getAccessTokenForServiceAccount: end",
|
|
642
|
+
state
|
|
643
|
+
});
|
|
514
644
|
return null;
|
|
515
645
|
});
|
|
516
646
|
return _getAccessTokenForServiceAccount.apply(this, arguments);
|
|
@@ -525,21 +655,33 @@ function determineDeploymentTypeAndDefaultRealmAndVersion(_x10) {
|
|
|
525
655
|
*/
|
|
526
656
|
function _determineDeploymentTypeAndDefaultRealmAndVersion() {
|
|
527
657
|
_determineDeploymentTypeAndDefaultRealmAndVersion = _asyncToGenerator(function* (state) {
|
|
528
|
-
(0, _Console.debugMessage)(
|
|
658
|
+
(0, _Console.debugMessage)({
|
|
659
|
+
message: "AuthenticateOps.determineDeploymentTypeAndDefaultRealmAndVersion: start",
|
|
660
|
+
state
|
|
661
|
+
});
|
|
529
662
|
if (!state.getDeploymentType()) {
|
|
530
663
|
state.setDeploymentType(yield determineDeploymentType(state));
|
|
531
664
|
}
|
|
532
665
|
determineDefaultRealm(state);
|
|
533
|
-
(0, _Console.debugMessage)(
|
|
666
|
+
(0, _Console.debugMessage)({
|
|
667
|
+
message: "AuthenticateOps.determineDeploymentTypeAndDefaultRealmAndVersion: realm=".concat(state.getRealm(), ", type=").concat(state.getDeploymentType()),
|
|
668
|
+
state
|
|
669
|
+
});
|
|
534
670
|
var versionInfo = yield (0, _ServerInfoApi.getServerVersionInfo)({
|
|
535
671
|
state
|
|
536
672
|
});
|
|
537
673
|
|
|
538
674
|
// https://github.com/rockcarver/frodo-cli/issues/109
|
|
539
|
-
(0, _Console.debugMessage)(
|
|
675
|
+
(0, _Console.debugMessage)({
|
|
676
|
+
message: "Full version: ".concat(versionInfo.fullVersion),
|
|
677
|
+
state
|
|
678
|
+
});
|
|
540
679
|
var version = yield getSemanticVersion(versionInfo);
|
|
541
680
|
state.setAmVersion(version);
|
|
542
|
-
(0, _Console.debugMessage)(
|
|
681
|
+
(0, _Console.debugMessage)({
|
|
682
|
+
message: "AuthenticateOps.determineDeploymentTypeAndDefaultRealmAndVersion: end",
|
|
683
|
+
state
|
|
684
|
+
});
|
|
543
685
|
});
|
|
544
686
|
return _determineDeploymentTypeAndDefaultRealmAndVersion.apply(this, arguments);
|
|
545
687
|
}
|
|
@@ -579,9 +721,16 @@ function _getTokens() {
|
|
|
579
721
|
forceLoginAsUser = false,
|
|
580
722
|
state
|
|
581
723
|
} = _ref2;
|
|
582
|
-
(0, _Console.debugMessage)(
|
|
724
|
+
(0, _Console.debugMessage)({
|
|
725
|
+
message: "AuthenticateOps.getTokens: start",
|
|
726
|
+
state
|
|
727
|
+
});
|
|
583
728
|
if (!state.getHost()) {
|
|
584
|
-
(0, _Console.printMessage)(
|
|
729
|
+
(0, _Console.printMessage)({
|
|
730
|
+
message: "No host specified and FRODO_HOST env variable not set!",
|
|
731
|
+
type: 'error',
|
|
732
|
+
state
|
|
733
|
+
});
|
|
585
734
|
return false;
|
|
586
735
|
}
|
|
587
736
|
try {
|
|
@@ -620,7 +769,10 @@ function _getTokens() {
|
|
|
620
769
|
|
|
621
770
|
// use service account to login?
|
|
622
771
|
if (!forceLoginAsUser && state.getServiceAccountId() && state.getServiceAccountJwk()) {
|
|
623
|
-
(0, _Console.debugMessage)(
|
|
772
|
+
(0, _Console.debugMessage)({
|
|
773
|
+
message: "AuthenticateOps.getTokens: Authenticating with service account ".concat(state.getServiceAccountId()),
|
|
774
|
+
state
|
|
775
|
+
});
|
|
624
776
|
try {
|
|
625
777
|
var token = yield getAccessTokenForServiceAccount({
|
|
626
778
|
state
|
|
@@ -630,14 +782,23 @@ function _getTokens() {
|
|
|
630
782
|
yield determineDeploymentTypeAndDefaultRealmAndVersion(state);
|
|
631
783
|
} catch (saErr) {
|
|
632
784
|
var _saErr$response, _saErr$response2, _saErr$response2$data, _saErr$response3, _saErr$response3$data;
|
|
633
|
-
(0, _Console.debugMessage)(
|
|
634
|
-
|
|
785
|
+
(0, _Console.debugMessage)({
|
|
786
|
+
message: ((_saErr$response = saErr.response) === null || _saErr$response === void 0 ? void 0 : _saErr$response.data) || saErr,
|
|
787
|
+
state
|
|
788
|
+
});
|
|
789
|
+
(0, _Console.debugMessage)({
|
|
790
|
+
message: state,
|
|
791
|
+
state
|
|
792
|
+
});
|
|
635
793
|
throw new Error("Service account login error: ".concat(((_saErr$response2 = saErr.response) === null || _saErr$response2 === void 0 ? void 0 : (_saErr$response2$data = _saErr$response2.data) === null || _saErr$response2$data === void 0 ? void 0 : _saErr$response2$data.error_description) || ((_saErr$response3 = saErr.response) === null || _saErr$response3 === void 0 ? void 0 : (_saErr$response3$data = _saErr$response3.data) === null || _saErr$response3$data === void 0 ? void 0 : _saErr$response3$data.message) || saErr));
|
|
636
794
|
}
|
|
637
795
|
}
|
|
638
796
|
// use user account to login
|
|
639
797
|
else if (state.getUsername() && state.getPassword()) {
|
|
640
|
-
(0, _Console.debugMessage)(
|
|
798
|
+
(0, _Console.debugMessage)({
|
|
799
|
+
message: "AuthenticateOps.getTokens: Authenticating with user account ".concat(state.getUsername()),
|
|
800
|
+
state
|
|
801
|
+
});
|
|
641
802
|
var _token = yield authenticate(state);
|
|
642
803
|
if (_token) state.setCookieValue(_token);
|
|
643
804
|
yield determineDeploymentTypeAndDefaultRealmAndVersion(state);
|
|
@@ -648,29 +809,61 @@ function _getTokens() {
|
|
|
648
809
|
}
|
|
649
810
|
// incomplete or no credentials
|
|
650
811
|
else {
|
|
651
|
-
(0, _Console.printMessage)(
|
|
812
|
+
(0, _Console.printMessage)({
|
|
813
|
+
message: "Incomplete or no credentials!",
|
|
814
|
+
type: 'error',
|
|
815
|
+
state
|
|
816
|
+
});
|
|
652
817
|
return false;
|
|
653
818
|
}
|
|
654
819
|
if (state.getCookieValue() || state.getUseBearerTokenForAmApis() && state.getBearerToken()) {
|
|
655
820
|
// https://github.com/rockcarver/frodo-cli/issues/102
|
|
656
|
-
(0, _Console.printMessage)(
|
|
657
|
-
|
|
821
|
+
(0, _Console.printMessage)({
|
|
822
|
+
message: "Connected to ".concat(state.getHost(), " [").concat(state.getRealm() ? state.getRealm() : 'root', "] as ").concat(yield getLoggedInSubject(state)),
|
|
823
|
+
type: 'info',
|
|
824
|
+
state
|
|
825
|
+
});
|
|
826
|
+
(0, _Console.debugMessage)({
|
|
827
|
+
message: "AuthenticateOps.getTokens: end with tokens",
|
|
828
|
+
state
|
|
829
|
+
});
|
|
658
830
|
return true;
|
|
659
831
|
}
|
|
660
832
|
} catch (error) {
|
|
661
833
|
var _error$response3, _error$response3$data, _error$response4, _error$response4$data, _error$response5;
|
|
662
834
|
// regular error
|
|
663
|
-
(0, _Console.printMessage)(
|
|
835
|
+
(0, _Console.printMessage)({
|
|
836
|
+
message: error.message,
|
|
837
|
+
type: 'error',
|
|
838
|
+
state
|
|
839
|
+
});
|
|
664
840
|
// axios error am api
|
|
665
|
-
(0, _Console.printMessage)(
|
|
841
|
+
(0, _Console.printMessage)({
|
|
842
|
+
message: (_error$response3 = error.response) === null || _error$response3 === void 0 ? void 0 : (_error$response3$data = _error$response3.data) === null || _error$response3$data === void 0 ? void 0 : _error$response3$data.message,
|
|
843
|
+
type: 'error',
|
|
844
|
+
state
|
|
845
|
+
});
|
|
666
846
|
// axios error am oauth2 api
|
|
667
|
-
(0, _Console.printMessage)(
|
|
847
|
+
(0, _Console.printMessage)({
|
|
848
|
+
message: (_error$response4 = error.response) === null || _error$response4 === void 0 ? void 0 : (_error$response4$data = _error$response4.data) === null || _error$response4$data === void 0 ? void 0 : _error$response4$data.error_description,
|
|
849
|
+
type: 'error',
|
|
850
|
+
state
|
|
851
|
+
});
|
|
668
852
|
// axios error data
|
|
669
|
-
(0, _Console.debugMessage)(
|
|
853
|
+
(0, _Console.debugMessage)({
|
|
854
|
+
message: (_error$response5 = error.response) === null || _error$response5 === void 0 ? void 0 : _error$response5.data,
|
|
855
|
+
state
|
|
856
|
+
});
|
|
670
857
|
// stack trace
|
|
671
|
-
(0, _Console.debugMessage)(
|
|
858
|
+
(0, _Console.debugMessage)({
|
|
859
|
+
message: error.stack || new Error().stack,
|
|
860
|
+
state
|
|
861
|
+
});
|
|
672
862
|
}
|
|
673
|
-
(0, _Console.debugMessage)(
|
|
863
|
+
(0, _Console.debugMessage)({
|
|
864
|
+
message: "AuthenticateOps.getTokens: end without tokens",
|
|
865
|
+
state
|
|
866
|
+
});
|
|
674
867
|
return false;
|
|
675
868
|
});
|
|
676
869
|
return _getTokens.apply(this, arguments);
|