@rockcarver/frodo-cli 4.2.0 → 4.2.1-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/CHANGELOG.md +62 -33
- package/dist/app.cjs +2061 -1921
- package/dist/app.cjs.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [4.2.0] - 2026-07-22
|
|
11
|
+
|
|
10
12
|
### Added
|
|
11
13
|
|
|
12
14
|
- Expanded experimental `frodo config-manager push` coverage with new import commands (PRs #633, #637, #638, #639, #640):
|
|
@@ -415,18 +417,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
415
417
|
### Added
|
|
416
418
|
|
|
417
419
|
- Improve support for custom platform deployments (non-forgeops or customized forgeops)
|
|
420
|
+
|
|
418
421
|
- \#429: Added options to support custom oauth2 clients used to obtain the access token for IDM API calls:
|
|
422
|
+
|
|
419
423
|
- `--login-client-id <client-id>` Specify a custom OAuth2 client id to use a your own oauth2 client for IDM API calls in deployments of type "cloud" or "forgeops". Your custom client must be configured as a public client and allow the authorization code grant using the "openid fr:idm:\*" scope. Use the "--redirect-uri" parameter if you have configured a custom redirect uri (default: "<host>/platform/appAuthHelperRedirect.html").
|
|
420
424
|
- `--login-redirect-uri <redirect-uri>` Specify a custom redirect URI to use with your custom OAuth2 client (efault: "<host>/platform/appAuthHelperRedirect.html").
|
|
421
425
|
|
|
422
426
|
The above options can also be supplied through environment variables:
|
|
427
|
+
|
|
423
428
|
- `FRODO_LOGIN_CLIENT_ID` OAuth2 client id for IDM API calls. Overridden by '--login-client-id' option.
|
|
424
429
|
- `FRODO_LOGIN_REDIRECT_URI` Redirect Uri for custom OAuth2 client id. Overridden by '--login-redirect-uri' option.
|
|
425
430
|
|
|
426
431
|
- \#359: Added an option to support custom IDM host URLs for all IDM API calls (e.g. platform deployments hosting AM and IDM on/in different DNS hosts/domains):
|
|
432
|
+
|
|
427
433
|
- `--idm-host <idm-host>` IDM base URL, e.g.: <https://cdk.idm.example.com/myidm>. Use only if your IDM installation resides in a different domain and/or if the base path differs from the default "/openidm".
|
|
428
434
|
|
|
429
435
|
The above option can also be supplied through an environment variable:
|
|
436
|
+
|
|
430
437
|
- `FRODO_IDM_HOST` IDM base URL. Overridden by '--idm-host' option.
|
|
431
438
|
|
|
432
439
|
**_Note:_** All the above options are also persisted in connection profiles so they only have to specified once and after that they come out of the connection profile.
|
|
@@ -768,12 +775,15 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
768
775
|
- `frodo esv secret import`
|
|
769
776
|
|
|
770
777
|
- Frodo now supports exporting (and importing) of ESV secret values. To leave stuartship of secret values with the cloud environment where they belong, frodo will always encrypt values using either encryption keys from the source environment (default) or the target environment (export option). Frodo will never export secrets in the clear. However, frodo supports importing clear values (as well as importing encrypted values). Use these new commands and parameters to export/import variables and secrets including secret values:
|
|
778
|
+
|
|
771
779
|
- New parameters for existing `frodo esv secret export` and `frodo config export` commands:
|
|
780
|
+
|
|
772
781
|
- `--include-active-values` Include the currently active (and loaded) secret value in the export. By default, secret values are encrypted server-side in the environment they are exported from. Use `--target <host url>` to have another environment perform the encryption.
|
|
773
782
|
|
|
774
783
|
- `--target <host url>` Host URL of the environment to perform secret value encryption. The URL must resolve to an existing connection profile. Use this option to generate an export that can be imported into the target environment without requiring admin access to the source environment.
|
|
775
784
|
|
|
776
785
|
- New `frodo esv secret import` and updated existing `frodo config import` command and note-worthy parameters:
|
|
786
|
+
|
|
777
787
|
- `--include-active-values` Import any secret values contained in the import file. By default, secret values are encrypted server-side in the environment they are exported from. Use `--source <host url>` to import a file exported from another environment than the one you are importing to.
|
|
778
788
|
|
|
779
789
|
- `--source <host url>` Host URL of the environment which performed secret value encryption. The URL must resolve to an existing connection profile. Use this option to import a file that was exported from a different source environment than the one you are importing to.
|
|
@@ -951,12 +961,14 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
951
961
|
### Added
|
|
952
962
|
|
|
953
963
|
- \#283: Support for authentication settings:
|
|
964
|
+
|
|
954
965
|
- `frodo authn` Manage authentication setting.
|
|
955
966
|
- `describe` List authentication settings.
|
|
956
967
|
- `export` Export authentication settings.
|
|
957
968
|
- `import` Import authentication settings.
|
|
958
969
|
|
|
959
970
|
Examples:
|
|
971
|
+
|
|
960
972
|
- Describe authentication settings:<br>
|
|
961
973
|
`frodo authn describe <myTenant> <realm>`
|
|
962
974
|
|
|
@@ -1059,12 +1071,14 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
1059
1071
|
### Added
|
|
1060
1072
|
|
|
1061
1073
|
- \#251: Support for Identity Cloud admin federation configuration:
|
|
1074
|
+
|
|
1062
1075
|
- `frodo admin federation` Manage admin federation configuration.
|
|
1063
1076
|
- `export` Export admin federation providers.
|
|
1064
1077
|
- `import` Import admin federation providers.
|
|
1065
1078
|
- `list` List admin federation providers.
|
|
1066
1079
|
|
|
1067
1080
|
Examples:
|
|
1081
|
+
|
|
1068
1082
|
- List all configured admin federation providers:<br>
|
|
1069
1083
|
`frodo admin federation list <myTenant>`
|
|
1070
1084
|
|
|
@@ -1102,12 +1116,14 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
1102
1116
|
|
|
1103
1117
|
- MacOS binaries are now signed and notarized and run without security exceptions.
|
|
1104
1118
|
- \#251: Support for Identity Cloud admin federation configuration:
|
|
1119
|
+
|
|
1105
1120
|
- `frodo admin federation` Manage admin federation configuration.
|
|
1106
1121
|
- `export` Export admin federation providers.
|
|
1107
1122
|
- `import` Import admin federation providers.
|
|
1108
1123
|
- `list` List admin federation providers.
|
|
1109
1124
|
|
|
1110
1125
|
Examples:
|
|
1126
|
+
|
|
1111
1127
|
- List all configured admin federation providers:<br>
|
|
1112
1128
|
`frodo admin federation list <myTenant>`
|
|
1113
1129
|
|
|
@@ -1140,12 +1156,14 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
1140
1156
|
### Added
|
|
1141
1157
|
|
|
1142
1158
|
- \#251: Support for Identity Cloud admin federation configuration:
|
|
1159
|
+
|
|
1143
1160
|
- `frodo admin federation` Manage admin federation configuration.
|
|
1144
1161
|
- `export` Export admin federation providers.
|
|
1145
1162
|
- `import` Import admin federation providers.
|
|
1146
1163
|
- `list` List admin federation providers.
|
|
1147
1164
|
|
|
1148
1165
|
Examples:
|
|
1166
|
+
|
|
1149
1167
|
- List all configured admin federation providers:<br>
|
|
1150
1168
|
`frodo admin federation list <myTenant>`
|
|
1151
1169
|
|
|
@@ -1198,6 +1216,7 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
1198
1216
|
### Added
|
|
1199
1217
|
|
|
1200
1218
|
- Support for authorization policies, policy sets, and resource types through new `authz` commands:
|
|
1219
|
+
|
|
1201
1220
|
- `frodo authz type` Manage authorization resource types.
|
|
1202
1221
|
- `delete` Delete authorization resource types.
|
|
1203
1222
|
- `describe` Describe authorization resource types.
|
|
@@ -1218,6 +1237,7 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
1218
1237
|
- `list` List authorization policies.
|
|
1219
1238
|
|
|
1220
1239
|
Examples:
|
|
1240
|
+
|
|
1221
1241
|
- Export a whole policy set including policies and resource types:<br>
|
|
1222
1242
|
`frodo authz set export -i <myPolicySet> <myTenant>`
|
|
1223
1243
|
- Import a whole policy set including dependencies exported using the previous example:<br>
|
|
@@ -1231,6 +1251,7 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
1231
1251
|
**_Note_**: Policy IDs/names have to be unique within the realm. Therefore you cannot export all policies from one policy set and import them into another policy set in the same realm without deleting the original policy set first.
|
|
1232
1252
|
|
|
1233
1253
|
Notes:
|
|
1254
|
+
|
|
1234
1255
|
- Use the new `--prereqs` option with the `authz set/policy import/export` commands to include structural prerequisites like resource types and policy sets.
|
|
1235
1256
|
- Use the new `--json` option with all `describe` sub-commands:<br>
|
|
1236
1257
|
`frodo authz type describe --json -n URL <myTenant>`<br>
|
|
@@ -1371,9 +1392,11 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
1371
1392
|
### Added
|
|
1372
1393
|
|
|
1373
1394
|
- \#52: Added new developer options for `script export` and `script import` commands:
|
|
1395
|
+
|
|
1374
1396
|
- `frodo script export`:
|
|
1375
1397
|
- `-x`, `--extract`: Extract the script from the exported file, and save it to a separate file. Ignored with `-n` or `-a`.
|
|
1376
1398
|
- `frodo script import`:
|
|
1399
|
+
|
|
1377
1400
|
- `-w`, `--watch`: Watch for changes to the script files and import the scripts automatically when the file changes. Can only be used with `-A`. (default: false)
|
|
1378
1401
|
|
|
1379
1402
|
**_Note:_** This new option only applies if the export was generated with the new `--extract` option!
|
|
@@ -1414,50 +1437,53 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
1414
1437
|
### Added
|
|
1415
1438
|
|
|
1416
1439
|
- Full support for Identity Cloud Service Accounts across all commands. Three options to leverage service accounts:
|
|
1417
|
-
1. Connection profiles for daily CLI usage:
|
|
1418
1440
|
|
|
1419
|
-
|
|
1441
|
+
1. Connection profiles for daily CLI usage:
|
|
1442
|
+
|
|
1443
|
+
For daily admin and development tasks, using the new `frodo conn save` command (see details under next bullet) is the easiest way to get going with service accounts. To migrate an existing connection profile to service accounts and automatically create a service account for your tenant admin, simply issue the following command:
|
|
1444
|
+
|
|
1445
|
+
% frodo conn save service-accounts
|
|
1446
|
+
Connected to https://openam-service-accounts.forgeblocks.com/am [alpha] as user volker.scheuber@forgerock.com
|
|
1447
|
+
Created and added service account Frodo-SA-1673586189578 with id 99c04bba-7213-463b-9a27-ceafa8a95734 to profile.
|
|
1448
|
+
Saved connection profile https://openam-service-accounts.forgeblocks.com/am
|
|
1449
|
+
%
|
|
1420
1450
|
|
|
1421
|
-
|
|
1422
|
-
Connected to https://openam-service-accounts.forgeblocks.com/am [alpha] as user volker.scheuber@forgerock.com
|
|
1423
|
-
Created and added service account Frodo-SA-1673586189578 with id 99c04bba-7213-463b-9a27-ceafa8a95734 to profile.
|
|
1424
|
-
Saved connection profile https://openam-service-accounts.forgeblocks.com/am
|
|
1425
|
-
%
|
|
1451
|
+
Then validate your connection profile is using the new service account:
|
|
1426
1452
|
|
|
1427
|
-
|
|
1453
|
+
% frodo info service-accounts
|
|
1454
|
+
Connected to https://openam-service-accounts.forgeblocks.com/am [alpha] as service account Frodo-SA-1673586189578 [99c04bba-7213-463b-9a27-ceafa8a95734]
|
|
1428
1455
|
|
|
1429
|
-
|
|
1430
|
-
|
|
1456
|
+
Host URL │https://openam-service-accounts.forgeblocks.com/am
|
|
1457
|
+
AM Version │7.3.0-2022-10-SNAPSHOT Build 9a1793c301ef579705e59b66ce57587f553e915f (2022-December-13 10:05)
|
|
1458
|
+
Subject (Type) │Frodo-SA-1673586189578 [99c04bba-7213-463b-9a27-ceafa8a95734] (Service Account)
|
|
1459
|
+
Deployment Type│cloud
|
|
1460
|
+
Cookie Name │e8b2bd07d5440d3
|
|
1461
|
+
Immutable │false
|
|
1462
|
+
Locked │false
|
|
1463
|
+
Region │us-west1
|
|
1464
|
+
Tier │other
|
|
1431
1465
|
|
|
1432
|
-
|
|
1433
|
-
|
|
1434
|
-
|
|
1435
|
-
Deployment Type│cloud
|
|
1436
|
-
Cookie Name │e8b2bd07d5440d3
|
|
1437
|
-
Immutable │false
|
|
1438
|
-
Locked │false
|
|
1439
|
-
Region │us-west1
|
|
1440
|
-
Tier │other
|
|
1466
|
+
Bearer token:
|
|
1467
|
+
eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..JD1iu64iGZZoGNwEr-iF2w.af-0-UDDOdusAETjw9YE3YnjOPr6TrdQrBLcl1lxf5RpNThfRhD08xvu1WtJbUZgvjbWdajECEFJfnEinnrUdpe9l0tHU6gAxDrRmu9hAjt0AB3PFSk9BE5SlwvaGoW5vrF4oH0IYtuv4899hFF8KGNYUtou143xmSrsLH37862YiAeiRKtjaQsVUrdbDPAFnKgGRxJIiXp-UE0ZCQQGSqm-Gj0AqVvo-Piib9THrEbbJCzdc00RPaCU2Ra1DH9PDid7ix-zfuind5IgEXxA8XwBM7kSEkiDLUWZ8EaFhn6YXwIHjXetacgYvvDaUav2Fq5baIitnG_LIrCm32XzcDkVnph4mVklBwfbQbWE6BGXEVLK-QLdDupaQw-bic-yVs2d7PBk2y70gbChHCQOm6-MepkYznP4wKoRR1gkqCdl51QIp-tsFB5K2plrKXiwsfHlHKfFKmsbdQUmH7xJFZQRhAtR_pKm-vHPOrPfBh0VbAdLRSkSeOZUABFH56X3gwXIpG_zuH42bQQkM9AlkB-lZrLf4jN0zFq-2ZN-zDgRR9h6qiiD3p9BDmFfaorUDTfFSrfaKas7OIp5ooW8Kqpv28RRtRtvfex0vT_kRbWl5R08MPWZDKZbx4IMyuun-2pYJ-F2-dvfA4A-jRvWIvC6jTUTu-RZZ0Yw1F2lgwFOVbmpMmG2uGHp5GceWePsZ34FVtJuaTd5D-uq_FoAb3HQ7FGEgUMJN_q82hCCX3URv_ocbFMjYwctdUqV_Ed-__A_9lbHHr8D2Uw_Qo0mwku7qwNBTS0-OcrwDvBOJohzRbpbfim-Sq2UzV9SBzzXNK7sMft1pNfu2-saOwPfy6SE0u42-HDqxE9t4MkklSroPY0oDUxO58ET8LXnewGhC9Tt0XTk6WA2rNLcNirhFqdmtKgfrSMQ_t22_DQEDwXpXqtHGmDoltJe7x_6Ofh0W5l7_A71MoHeFpVa_AHpHybnaF4fvUbD284wOV8i22SqrUKuHoJ3o6_g5JlhvMCvb4OZQ-ltxSf98aPsB9nCSthYg5-GkiR_r5mK1w9gZkBTXfYs0qC8-zYEQb4WNiI9.2JGMj9iW6YD-RE_dGkL7_w
|
|
1468
|
+
%
|
|
1441
1469
|
|
|
1442
|
-
|
|
1443
|
-
eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..JD1iu64iGZZoGNwEr-iF2w.af-0-UDDOdusAETjw9YE3YnjOPr6TrdQrBLcl1lxf5RpNThfRhD08xvu1WtJbUZgvjbWdajECEFJfnEinnrUdpe9l0tHU6gAxDrRmu9hAjt0AB3PFSk9BE5SlwvaGoW5vrF4oH0IYtuv4899hFF8KGNYUtou143xmSrsLH37862YiAeiRKtjaQsVUrdbDPAFnKgGRxJIiXp-UE0ZCQQGSqm-Gj0AqVvo-Piib9THrEbbJCzdc00RPaCU2Ra1DH9PDid7ix-zfuind5IgEXxA8XwBM7kSEkiDLUWZ8EaFhn6YXwIHjXetacgYvvDaUav2Fq5baIitnG_LIrCm32XzcDkVnph4mVklBwfbQbWE6BGXEVLK-QLdDupaQw-bic-yVs2d7PBk2y70gbChHCQOm6-MepkYznP4wKoRR1gkqCdl51QIp-tsFB5K2plrKXiwsfHlHKfFKmsbdQUmH7xJFZQRhAtR_pKm-vHPOrPfBh0VbAdLRSkSeOZUABFH56X3gwXIpG_zuH42bQQkM9AlkB-lZrLf4jN0zFq-2ZN-zDgRR9h6qiiD3p9BDmFfaorUDTfFSrfaKas7OIp5ooW8Kqpv28RRtRtvfex0vT_kRbWl5R08MPWZDKZbx4IMyuun-2pYJ-F2-dvfA4A-jRvWIvC6jTUTu-RZZ0Yw1F2lgwFOVbmpMmG2uGHp5GceWePsZ34FVtJuaTd5D-uq_FoAb3HQ7FGEgUMJN_q82hCCX3URv_ocbFMjYwctdUqV_Ed-__A_9lbHHr8D2Uw_Qo0mwku7qwNBTS0-OcrwDvBOJohzRbpbfim-Sq2UzV9SBzzXNK7sMft1pNfu2-saOwPfy6SE0u42-HDqxE9t4MkklSroPY0oDUxO58ET8LXnewGhC9Tt0XTk6WA2rNLcNirhFqdmtKgfrSMQ_t22_DQEDwXpXqtHGmDoltJe7x_6Ofh0W5l7_A71MoHeFpVa_AHpHybnaF4fvUbD284wOV8i22SqrUKuHoJ3o6_g5JlhvMCvb4OZQ-ltxSf98aPsB9nCSthYg5-GkiR_r5mK1w9gZkBTXfYs0qC8-zYEQb4WNiI9.2JGMj9iW6YD-RE_dGkL7_w
|
|
1444
|
-
%
|
|
1470
|
+
Once you have verified that your service account works, go ahead and enable MFA for your tenant admin account!
|
|
1445
1471
|
|
|
1446
|
-
|
|
1472
|
+
2. CLI parameters:
|
|
1447
1473
|
|
|
1448
|
-
|
|
1474
|
+
All commands support the following new options to use service accounts:
|
|
1449
1475
|
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
- `--sa-jwk-file <file>` File containing the service account's java web key (jwk). Jwk must contain private key! If specified, must also include `--sa-id`.
|
|
1476
|
+
- `--sa-id <uuid>` Service account's uuid. If specified, must also include `--sa-jwk-file`.
|
|
1477
|
+
- `--sa-jwk-file <file>` File containing the service account's java web key (jwk). Jwk must contain private key! If specified, must also include `--sa-id`.
|
|
1453
1478
|
|
|
1454
|
-
|
|
1479
|
+
This is a great way to leverage the nice UI to create and manage service accounts and then use one of the accounts with Frodo.
|
|
1455
1480
|
|
|
1456
|
-
3.
|
|
1481
|
+
3. Environment variables for CI/CD
|
|
1457
1482
|
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1483
|
+
For CI/CD pipelines, environment variables are preferable over command line parameters, because they are not visible in system logs:
|
|
1484
|
+
|
|
1485
|
+
- `FRODO_SA_ID`: Service account's uuid. If set, must also set `FRODO_SA_JWK`.
|
|
1486
|
+
- `FRODO_SA_JWK`: Service account's java web key (jwk) as single-line string. Jwk must contain private key! If set, must also set `FRODO_SA_ID`.
|
|
1461
1487
|
|
|
1462
1488
|
- \#143: Support Identity Cloud Service Accounts in `frodo conn save|add` command
|
|
1463
1489
|
1. The `frodo conn add` command is renamed to `frodo conn save` and `add` is added as an alias for backwards compatibility.
|
|
@@ -1472,6 +1498,7 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
1472
1498
|
5. The `frodo conn save` command validates service account configuration unless the `--no-validate` options is supplied.
|
|
1473
1499
|
|
|
1474
1500
|
- Add support for additional environment variables:
|
|
1501
|
+
|
|
1475
1502
|
- `FRODO_SA_ID`: Service account's uuid. If set, must also set `FRODO_SA_JWK`.
|
|
1476
1503
|
- `FRODO_SA_JWK`: Service account's java web key (jwk) as single-line string. Jwk must contain private key! If set, must also set `FRODO_SA_ID`.
|
|
1477
1504
|
- `FRODO_AUTHENTICATION_SERVICE=journey`: Specify a login journey for frodo to use.
|
|
@@ -1479,6 +1506,7 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
1479
1506
|
- `FRODO_POLLY_LOG_LEVEL=info`: Frodo mock engine log level (`trace`, `debug`, `info`, `warn`, `error`, `silent`). This is helpful for troubleshooting the mock capability, only.
|
|
1480
1507
|
|
|
1481
1508
|
Environment variables added in 0.19.0:
|
|
1509
|
+
|
|
1482
1510
|
- `FRODO_HOST`
|
|
1483
1511
|
- `FRODO_REALM`
|
|
1484
1512
|
- `FRODO_USERNAME`
|
|
@@ -2351,7 +2379,8 @@ Frodo CLI 2.x automatically refreshes session and access tokens before they expi
|
|
|
2351
2379
|
- Fixed problem with adding connection profiles
|
|
2352
2380
|
- Miscellaneous bug fixes
|
|
2353
2381
|
|
|
2354
|
-
[unreleased]: https://github.com/rockcarver/frodo-cli/compare/v4.
|
|
2382
|
+
[unreleased]: https://github.com/rockcarver/frodo-cli/compare/v4.2.0...HEAD
|
|
2383
|
+
[4.2.0]: https://github.com/rockcarver/frodo-cli/compare/v4.1.0...v4.2.0
|
|
2355
2384
|
[4.1.0]: https://github.com/rockcarver/frodo-cli/compare/v4.0.2-0...v4.1.0
|
|
2356
2385
|
[4.0.2-0]: https://github.com/rockcarver/frodo-cli/compare/v4.0.1...v4.0.2-0
|
|
2357
2386
|
[4.0.1]: https://github.com/rockcarver/frodo-cli/compare/v4.0.1-1...v4.0.1
|