@rockcarver/frodo-cli 2.0.0-51 → 2.0.0-53
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 +42 -1
- package/esm/app.js +7 -2
- package/esm/app.js.map +1 -1
- package/esm/cli/admin/admin-add-autoid-static-user-mapping.js +3 -6
- package/esm/cli/admin/admin-add-autoid-static-user-mapping.js.map +1 -1
- package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js +46 -51
- package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-federation-export.js +1 -1
- package/esm/cli/admin/admin-federation-export.js.map +1 -1
- package/esm/cli/admin/admin-federation-import.js +1 -1
- package/esm/cli/admin/admin-federation-import.js.map +1 -1
- package/esm/cli/admin/admin-federation-list.js +1 -1
- package/esm/cli/admin/admin-federation-list.js.map +1 -1
- package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js +4 -6
- package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-hide-generic-extension-attributes.js +4 -6
- package/esm/cli/admin/admin-hide-generic-extension-attributes.js.map +1 -1
- package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js +4 -9
- package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js +4 -9
- package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js.map +1 -1
- package/esm/cli/admin/admin-list-static-user-mappings.js +3 -9
- package/esm/cli/admin/admin-list-static-user-mappings.js.map +1 -1
- package/esm/cli/admin/admin-remove-static-user-mapping.js +3 -6
- package/esm/cli/admin/admin-remove-static-user-mapping.js.map +1 -1
- package/esm/cli/admin/admin-repair-org-model.js +4 -6
- package/esm/cli/admin/admin-repair-org-model.js.map +1 -1
- package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +4 -6
- package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-show-generic-extension-attributes.js +4 -6
- package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +1 -1
- package/esm/cli/agent/agent-delete.js +8 -21
- package/esm/cli/agent/agent-delete.js.map +1 -1
- package/esm/cli/agent/agent-export.js +6 -3
- package/esm/cli/agent/agent-export.js.map +1 -1
- package/esm/cli/agent/agent-gateway-delete.js +7 -20
- package/esm/cli/agent/agent-gateway-delete.js.map +1 -1
- package/esm/cli/agent/agent-gateway-export.js +6 -3
- package/esm/cli/agent/agent-gateway-export.js.map +1 -1
- package/esm/cli/agent/agent-gateway-import.js +8 -4
- package/esm/cli/agent/agent-gateway-import.js.map +1 -1
- package/esm/cli/agent/agent-gateway-list.js +2 -1
- package/esm/cli/agent/agent-gateway-list.js.map +1 -1
- package/esm/cli/agent/agent-import.js +8 -4
- package/esm/cli/agent/agent-import.js.map +1 -1
- package/esm/cli/agent/agent-java-delete.js +7 -20
- package/esm/cli/agent/agent-java-delete.js.map +1 -1
- package/esm/cli/agent/agent-java-export.js +6 -3
- package/esm/cli/agent/agent-java-export.js.map +1 -1
- package/esm/cli/agent/agent-java-import.js +8 -4
- package/esm/cli/agent/agent-java-import.js.map +1 -1
- package/esm/cli/agent/agent-java-list.js +2 -1
- package/esm/cli/agent/agent-java-list.js.map +1 -1
- package/esm/cli/agent/agent-list.js +2 -1
- package/esm/cli/agent/agent-list.js.map +1 -1
- package/esm/cli/agent/agent-web-delete.js +7 -20
- package/esm/cli/agent/agent-web-delete.js.map +1 -1
- package/esm/cli/agent/agent-web-export.js +6 -3
- package/esm/cli/agent/agent-web-export.js.map +1 -1
- package/esm/cli/agent/agent-web-import.js +8 -4
- package/esm/cli/agent/agent-web-import.js.map +1 -1
- package/esm/cli/agent/agent-web-list.js +2 -1
- package/esm/cli/agent/agent-web-list.js.map +1 -1
- package/esm/cli/app/app-delete.js +4 -4
- package/esm/cli/app/app-delete.js.map +1 -1
- package/esm/cli/app/app-export.js +6 -6
- package/esm/cli/app/app-export.js.map +1 -1
- package/esm/cli/app/app-import.js +8 -8
- package/esm/cli/app/app-import.js.map +1 -1
- package/esm/cli/app/app-list.js +2 -1
- package/esm/cli/app/app-list.js.map +1 -1
- package/esm/cli/conn/conn-delete.js +7 -1
- package/esm/cli/conn/conn-delete.js.map +1 -1
- package/esm/cli/conn/conn-save.js +9 -9
- package/esm/cli/conn/conn-save.js.map +1 -1
- package/esm/cli/email/email-template-export.js +6 -3
- package/esm/cli/email/email-template-export.js.map +1 -1
- package/esm/cli/email/email-template-import.js +8 -4
- package/esm/cli/email/email-template-import.js.map +1 -1
- package/esm/cli/email/email-template-list.js +2 -1
- package/esm/cli/email/email-template-list.js.map +1 -1
- package/esm/cli/esv/esv-secret-create.js +1 -1
- package/esm/cli/esv/esv-secret-create.js.map +1 -1
- package/esm/cli/esv/esv-secret-delete.js +1 -1
- package/esm/cli/esv/esv-secret-delete.js.map +1 -1
- package/esm/cli/esv/esv-secret-describe.js +1 -1
- package/esm/cli/esv/esv-secret-describe.js.map +1 -1
- package/esm/cli/esv/esv-secret-export.js +1 -1
- package/esm/cli/esv/esv-secret-export.js.map +1 -1
- package/esm/cli/esv/esv-secret-list.js +1 -1
- package/esm/cli/esv/esv-secret-list.js.map +1 -1
- package/esm/cli/esv/esv-secret-set.js +1 -1
- package/esm/cli/esv/esv-secret-set.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-activate.js +1 -1
- package/esm/cli/esv/esv-secret-version-activate.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-create.js +1 -1
- package/esm/cli/esv/esv-secret-version-create.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-deactivate.js +1 -1
- package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-delete.js +1 -1
- package/esm/cli/esv/esv-secret-version-delete.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-list.js +1 -1
- package/esm/cli/esv/esv-secret-version-list.js.map +1 -1
- package/esm/cli/esv/esv-variable-create.js +1 -1
- package/esm/cli/esv/esv-variable-create.js.map +1 -1
- package/esm/cli/esv/esv-variable-delete.js +1 -1
- package/esm/cli/esv/esv-variable-delete.js.map +1 -1
- package/esm/cli/esv/esv-variable-describe.js +1 -1
- package/esm/cli/esv/esv-variable-describe.js.map +1 -1
- package/esm/cli/esv/esv-variable-export.js +1 -1
- package/esm/cli/esv/esv-variable-export.js.map +1 -1
- package/esm/cli/esv/esv-variable-list.js +1 -1
- package/esm/cli/esv/esv-variable-list.js.map +1 -1
- package/esm/cli/esv/esv-variable-set.js +1 -1
- package/esm/cli/esv/esv-variable-set.js.map +1 -1
- package/esm/cli/idm/idm-count.js +2 -1
- package/esm/cli/idm/idm-count.js.map +1 -1
- package/esm/cli/idm/idm-export.js +6 -3
- package/esm/cli/idm/idm-export.js.map +1 -1
- package/esm/cli/idm/idm-import.js +8 -4
- package/esm/cli/idm/idm-import.js.map +1 -1
- package/esm/cli/idm/idm-list.js +2 -1
- package/esm/cli/idm/idm-list.js.map +1 -1
- package/esm/cli/idp/idp-export.js +6 -3
- package/esm/cli/idp/idp-export.js.map +1 -1
- package/esm/cli/idp/idp-import.js +8 -4
- package/esm/cli/idp/idp-import.js.map +1 -1
- package/esm/cli/idp/idp-list.js +2 -1
- package/esm/cli/idp/idp-list.js.map +1 -1
- package/esm/cli/journey/journey-delete.js +6 -7
- package/esm/cli/journey/journey-delete.js.map +1 -1
- package/esm/cli/journey/journey-describe.js +15 -9
- package/esm/cli/journey/journey-describe.js.map +1 -1
- package/esm/cli/journey/journey-export.js +6 -3
- package/esm/cli/journey/journey-export.js.map +1 -1
- package/esm/cli/journey/journey-import.js +8 -4
- package/esm/cli/journey/journey-import.js.map +1 -1
- package/esm/cli/journey/journey-list.js +2 -1
- package/esm/cli/journey/journey-list.js.map +1 -1
- package/esm/cli/journey/journey-prune.js +3 -2
- package/esm/cli/journey/journey-prune.js.map +1 -1
- package/esm/cli/log/log-fetch.js +6 -2
- package/esm/cli/log/log-fetch.js.map +1 -1
- package/esm/cli/log/log-list.js +12 -3
- package/esm/cli/log/log-list.js.map +1 -1
- package/esm/cli/log/log-tail.js +6 -2
- package/esm/cli/log/log-tail.js.map +1 -1
- package/esm/cli/oauth/oauth-client-export.js +6 -6
- package/esm/cli/oauth/oauth-client-export.js.map +1 -1
- package/esm/cli/oauth/oauth-client-import.js +8 -8
- package/esm/cli/oauth/oauth-client-import.js.map +1 -1
- package/esm/cli/oauth/oauth-client-list.js +2 -1
- package/esm/cli/oauth/oauth-client-list.js.map +1 -1
- package/esm/cli/saml/saml-describe.js +2 -1
- package/esm/cli/saml/saml-describe.js.map +1 -1
- package/esm/cli/saml/saml-export.js +6 -3
- package/esm/cli/saml/saml-export.js.map +1 -1
- package/esm/cli/saml/saml-import.js +8 -4
- package/esm/cli/saml/saml-import.js.map +1 -1
- package/esm/cli/saml/saml-list.js +2 -1
- package/esm/cli/saml/saml-list.js.map +1 -1
- package/esm/cli/saml/saml-metadata-export.js +10 -2
- package/esm/cli/saml/saml-metadata-export.js.map +1 -1
- package/esm/cli/script/script-delete.js +10 -4
- package/esm/cli/script/script-delete.js.map +1 -1
- package/esm/cli/script/script-export.js +9 -13
- package/esm/cli/script/script-export.js.map +1 -1
- package/esm/cli/script/script-import.js +19 -14
- package/esm/cli/script/script-import.js.map +1 -1
- package/esm/cli/service/service-delete.js +4 -2
- package/esm/cli/service/service-delete.js.map +1 -1
- package/esm/cli/service/service-export.js +6 -3
- package/esm/cli/service/service-export.js.map +1 -1
- package/esm/cli/service/service-import.js +8 -4
- package/esm/cli/service/service-import.js.map +1 -1
- package/esm/cli/service/service-list.js +2 -1
- package/esm/cli/service/service-list.js.map +1 -1
- package/esm/cli/shell/shell.js +2 -4
- package/esm/cli/shell/shell.js.map +1 -1
- package/esm/cli/theme/theme-delete.js +7 -4
- package/esm/cli/theme/theme-delete.js.map +1 -1
- package/esm/cli/theme/theme-export.js +8 -4
- package/esm/cli/theme/theme-export.js.map +1 -1
- package/esm/cli/theme/theme-import.js +10 -5
- package/esm/cli/theme/theme-import.js.map +1 -1
- package/esm/cli/theme/theme-list.js +2 -1
- package/esm/cli/theme/theme-list.js.map +1 -1
- package/esm/ops/AdminOps.js +790 -3
- package/esm/ops/AdminOps.js.map +1 -1
- package/esm/ops/AgentOps.js +638 -305
- package/esm/ops/AgentOps.js.map +1 -1
- package/esm/ops/ApplicationOps.js +91 -79
- package/esm/ops/ApplicationOps.js.map +1 -1
- package/esm/ops/AuthenticateOps.js +4 -9
- package/esm/ops/AuthenticateOps.js.map +1 -1
- package/esm/ops/AuthenticationSettingsOps.js +22 -23
- package/esm/ops/AuthenticationSettingsOps.js.map +1 -1
- package/esm/ops/CirclesOfTrustOps.js +52 -55
- package/esm/ops/CirclesOfTrustOps.js.map +1 -1
- package/esm/ops/ConfigOps.js +100 -84
- package/esm/ops/ConfigOps.js.map +1 -1
- package/esm/ops/ConnectionProfileOps.js +15 -8
- package/esm/ops/ConnectionProfileOps.js.map +1 -1
- package/esm/ops/EmailTemplateOps.js +64 -47
- package/esm/ops/EmailTemplateOps.js.map +1 -1
- package/esm/ops/IdmOps.js +149 -117
- package/esm/ops/IdmOps.js.map +1 -1
- package/esm/ops/IdpOps.js +76 -46
- package/esm/ops/IdpOps.js.map +1 -1
- package/esm/ops/JourneyOps.js +333 -238
- package/esm/ops/JourneyOps.js.map +1 -1
- package/esm/ops/LogOps.js +15 -23
- package/esm/ops/LogOps.js.map +1 -1
- package/esm/ops/OAuth2ClientOps.js +43 -36
- package/esm/ops/OAuth2ClientOps.js.map +1 -1
- package/esm/ops/PolicyOps.js +104 -108
- package/esm/ops/PolicyOps.js.map +1 -1
- package/esm/ops/PolicySetOps.js +72 -78
- package/esm/ops/PolicySetOps.js.map +1 -1
- package/esm/ops/ResourceTypeOps.js +84 -99
- package/esm/ops/ResourceTypeOps.js.map +1 -1
- package/esm/ops/Saml2Ops.js +132 -88
- package/esm/ops/Saml2Ops.js.map +1 -1
- package/esm/ops/ScriptOps.js +90 -80
- package/esm/ops/ScriptOps.js.map +1 -1
- package/esm/ops/ServiceOps.js +125 -87
- package/esm/ops/ServiceOps.js.map +1 -1
- package/esm/ops/ThemeOps.js +170 -139
- package/esm/ops/ThemeOps.js.map +1 -1
- package/esm/ops/{AdminFederationOps.js → cloud/AdminFederationOps.js} +10 -16
- package/esm/ops/cloud/AdminFederationOps.js.map +1 -0
- package/esm/ops/{SecretsOps.js → cloud/SecretsOps.js} +123 -129
- package/esm/ops/cloud/SecretsOps.js.map +1 -0
- package/esm/ops/{VariablesOps.js → cloud/VariablesOps.js} +48 -52
- package/esm/ops/cloud/VariablesOps.js.map +1 -0
- package/esm/ops/templates/OAuth2ClientTemplate.json +270 -0
- package/esm/ops/templates/OAuth2TrustedJwtIssuerTemplate.json +38 -0
- package/esm/ops/templates/OrgModelUserAttributesTemplate.json +149 -0
- package/esm/ops/templates/autoaccess/IPAddresses.json +202 -0
- package/esm/ops/templates/autoaccess/UserAgents.json +35 -0
- package/esm/ops/templates/autoaccess/Usernames.json +203 -0
- package/esm/ops/templates/cloud/GenericExtensionAttributesTemplate.json +392 -0
- package/esm/ops/templates/cloud/managed.json +4119 -0
- package/esm/ops/utils/OpsUtils.js.map +1 -1
- package/esm/utils/Console.js +31 -0
- package/esm/utils/Console.js.map +1 -1
- package/package.json +10 -6
- package/esm/ops/AdminFederationOps.js.map +0 -1
- package/esm/ops/SecretsOps.js.map +0 -1
- package/esm/ops/VariablesOps.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,43 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- Update to frodo-lib 2.0.0-74
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
|
|
16
|
+
- rockcarver/frodo-lib#391: Frodo now creates service accounts with all allowed scopes:
|
|
17
|
+
- `fr:am:*`
|
|
18
|
+
- `fr:idc:analytics:*`
|
|
19
|
+
- `fr:autoaccess:*`
|
|
20
|
+
- `fr:idc:certificate:*`
|
|
21
|
+
- `fr:idc:certificate:read`
|
|
22
|
+
- `fr:idc:content-security-policy:*`
|
|
23
|
+
- `fr:idc:custom-domain:*`
|
|
24
|
+
- `fr:idc:esv:*`
|
|
25
|
+
- `fr:idc:esv:read`
|
|
26
|
+
- `fr:idc:esv:restart`
|
|
27
|
+
- `fr:idc:esv:update`
|
|
28
|
+
- `fr:idm:*`
|
|
29
|
+
- `fr:iga:*`
|
|
30
|
+
- `fr:idc:promotion:*`
|
|
31
|
+
- `fr:idc:release:*`
|
|
32
|
+
- `fr:idc:sso-cookie:*`
|
|
33
|
+
|
|
34
|
+
## [2.0.0-52] - 2024-03-23
|
|
35
|
+
|
|
36
|
+
### Changed
|
|
37
|
+
|
|
38
|
+
- Update to frodo-lib 2.0.0-73
|
|
39
|
+
|
|
40
|
+
### Fixed
|
|
41
|
+
|
|
42
|
+
- \#378: `--llt` option of `frodo admin create-oauth2-client-with-admin-privileges` now works properly again
|
|
43
|
+
- \#377: Frodo CLI now properly handles FrodoErrors thrown by frodo-lib
|
|
44
|
+
|
|
45
|
+
## [2.0.0-51] - 2024-02-10
|
|
46
|
+
|
|
10
47
|
## [2.0.0-50] - 2024-02-07
|
|
11
48
|
|
|
12
49
|
## [2.0.0-49] - 2024-02-05
|
|
@@ -1483,7 +1520,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
1483
1520
|
- Fixed problem with adding connection profiles
|
|
1484
1521
|
- Miscellaneous bug fixes
|
|
1485
1522
|
|
|
1486
|
-
[Unreleased]: https://github.com/rockcarver/frodo-cli/compare/v2.0.0-
|
|
1523
|
+
[Unreleased]: https://github.com/rockcarver/frodo-cli/compare/v2.0.0-52...HEAD
|
|
1524
|
+
|
|
1525
|
+
[2.0.0-52]: https://github.com/rockcarver/frodo-cli/compare/v2.0.0-51...v2.0.0-52
|
|
1526
|
+
|
|
1527
|
+
[2.0.0-51]: https://github.com/rockcarver/frodo-cli/compare/v2.0.0-50...v2.0.0-51
|
|
1487
1528
|
|
|
1488
1529
|
[2.0.0-50]: https://github.com/rockcarver/frodo-cli/compare/v2.0.0-49...v2.0.0-50
|
|
1489
1530
|
|
package/esm/app.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { frodo } from '@rockcarver/frodo-lib';
|
|
1
|
+
import { frodo, state } from '@rockcarver/frodo-lib';
|
|
2
2
|
import { Command } from 'commander';
|
|
3
3
|
|
|
4
4
|
// commands
|
|
@@ -25,7 +25,7 @@ import shell from './cli/shell/shell';
|
|
|
25
25
|
// enable sample command template.
|
|
26
26
|
// import something from './cli/_template/something';
|
|
27
27
|
import theme from './cli/theme/theme';
|
|
28
|
-
import { printMessage } from './utils/Console';
|
|
28
|
+
import { debugMessage, printError, printMessage, verboseMessage } from './utils/Console';
|
|
29
29
|
import { getVersions } from './utils/Version';
|
|
30
30
|
const {
|
|
31
31
|
initConnectionProfiles
|
|
@@ -35,6 +35,11 @@ const {
|
|
|
35
35
|
} = frodo.cache;
|
|
36
36
|
(async () => {
|
|
37
37
|
try {
|
|
38
|
+
// override default library output handlers with our own
|
|
39
|
+
state.setPrintHandler(printMessage);
|
|
40
|
+
state.setErrorHandler(printError);
|
|
41
|
+
state.setDebugHandler(debugMessage);
|
|
42
|
+
state.setVerboseHandler(verboseMessage);
|
|
38
43
|
const program = new Command('frodo').version(await getVersions(false), '-v, --version');
|
|
39
44
|
printMessage(await getVersions(true), 'text', false);
|
|
40
45
|
await initConnectionProfiles();
|
package/esm/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","names":["frodo","Command","admin","agent","app","authn","authz","config","conn","email","esv","idm","idp","info","journey","log","oauth","realm","saml","script","service","shell","theme","printMessage","getVersions","initConnectionProfiles","initTokenCache","cache","program","version","addCommand","showHelpAfterError","enablePositionalOptions","parse","e","process","exitCode","stack"],"sources":["../src/app.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport { Command } from 'commander';\n\n// commands\nimport admin from './cli/admin/admin';\nimport agent from './cli/agent/agent';\nimport app from './cli/app/app';\nimport authn from './cli/authn/authn';\nimport authz from './cli/authz/authz';\nimport config from './cli/config/config';\nimport conn from './cli/conn/conn';\nimport email from './cli/email/email';\nimport esv from './cli/esv/esv';\nimport idm from './cli/idm/idm';\nimport idp from './cli/idp/idp';\nimport info from './cli/info/info';\nimport journey from './cli/journey/journey';\nimport log from './cli/log/log';\nimport oauth from './cli/oauth/oauth';\nimport realm from './cli/realm/realm';\nimport saml from './cli/saml/saml';\nimport script from './cli/script/script';\nimport service from './cli/service/service';\nimport shell from './cli/shell/shell';\n// enable sample command template.\n// import something from './cli/_template/something';\nimport theme from './cli/theme/theme';\nimport {
|
|
1
|
+
{"version":3,"file":"app.js","names":["frodo","state","Command","admin","agent","app","authn","authz","config","conn","email","esv","idm","idp","info","journey","log","oauth","realm","saml","script","service","shell","theme","debugMessage","printError","printMessage","verboseMessage","getVersions","initConnectionProfiles","initTokenCache","cache","setPrintHandler","setErrorHandler","setDebugHandler","setVerboseHandler","program","version","addCommand","showHelpAfterError","enablePositionalOptions","parse","e","process","exitCode","stack"],"sources":["../src/app.ts"],"sourcesContent":["import { frodo, state } from '@rockcarver/frodo-lib';\nimport { Command } from 'commander';\n\n// commands\nimport admin from './cli/admin/admin';\nimport agent from './cli/agent/agent';\nimport app from './cli/app/app';\nimport authn from './cli/authn/authn';\nimport authz from './cli/authz/authz';\nimport config from './cli/config/config';\nimport conn from './cli/conn/conn';\nimport email from './cli/email/email';\nimport esv from './cli/esv/esv';\nimport idm from './cli/idm/idm';\nimport idp from './cli/idp/idp';\nimport info from './cli/info/info';\nimport journey from './cli/journey/journey';\nimport log from './cli/log/log';\nimport oauth from './cli/oauth/oauth';\nimport realm from './cli/realm/realm';\nimport saml from './cli/saml/saml';\nimport script from './cli/script/script';\nimport service from './cli/service/service';\nimport shell from './cli/shell/shell';\n// enable sample command template.\n// import something from './cli/_template/something';\nimport theme from './cli/theme/theme';\nimport {\n debugMessage,\n printError,\n printMessage,\n verboseMessage,\n} from './utils/Console';\nimport { getVersions } from './utils/Version';\n\nconst { initConnectionProfiles } = frodo.conn;\nconst { initTokenCache } = frodo.cache;\n\n(async () => {\n try {\n // override default library output handlers with our own\n state.setPrintHandler(printMessage);\n state.setErrorHandler(printError);\n state.setDebugHandler(debugMessage);\n state.setVerboseHandler(verboseMessage);\n\n const program = new Command('frodo').version(\n await getVersions(false),\n '-v, --version'\n );\n\n printMessage(await getVersions(true), 'text', false);\n\n await initConnectionProfiles();\n await initTokenCache();\n\n program.addCommand(admin());\n program.addCommand(agent());\n program.addCommand(authn());\n program.addCommand(authz());\n program.addCommand(app());\n program.addCommand(config());\n program.addCommand(conn());\n program.addCommand(email());\n program.addCommand(esv());\n program.addCommand(idm());\n program.addCommand(idp());\n program.addCommand(info());\n program.addCommand(journey());\n program.addCommand(log());\n program.addCommand(oauth());\n program.addCommand(realm());\n program.addCommand(saml());\n program.addCommand(script());\n program.addCommand(service());\n program.addCommand(shell());\n program.addCommand(theme());\n // enable sample command template.\n // program.addCommand(something());\n\n program.showHelpAfterError();\n program.enablePositionalOptions();\n program.parse();\n } catch (e) {\n process.exitCode = 1;\n printMessage(`ERROR: exception running frodo - ${e}`, 'error');\n printMessage(e.stack, 'error');\n }\n})();\n"],"mappings":"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"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { addAutoIdStaticUserMapping } from '../../ops/AdminOps';
|
|
2
2
|
import { getTokens } from '../../ops/AuthenticateOps';
|
|
3
3
|
import { printMessage } from '../../utils/Console.js';
|
|
4
4
|
import { FrodoCommand } from '../FrodoCommand';
|
|
5
|
-
const {
|
|
6
|
-
addAutoIdStaticUserMapping
|
|
7
|
-
} = frodo.admin;
|
|
8
5
|
const program = new FrodoCommand('frodo admin add-autoid-static-user-mapping');
|
|
9
6
|
program.description('Add AutoId static user mapping to enable dashboards and other AutoId-based functionality.').action(
|
|
10
7
|
// implement command logic inside action handler
|
|
@@ -12,8 +9,8 @@ async (host, realm, user, password, options, command) => {
|
|
|
12
9
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
13
10
|
if (await getTokens()) {
|
|
14
11
|
printMessage(`Adding AutoId static user mapping...`);
|
|
15
|
-
await addAutoIdStaticUserMapping();
|
|
16
|
-
|
|
12
|
+
const outcome = await addAutoIdStaticUserMapping();
|
|
13
|
+
if (!outcome) process.exitCode = 1;
|
|
17
14
|
} else {
|
|
18
15
|
process.exitCode = 1;
|
|
19
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-add-autoid-static-user-mapping.js","names":["
|
|
1
|
+
{"version":3,"file":"admin-add-autoid-static-user-mapping.js","names":["addAutoIdStaticUserMapping","getTokens","printMessage","FrodoCommand","program","description","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","outcome","process","exitCode","parse"],"sources":["../../../src/cli/admin/admin-add-autoid-static-user-mapping.ts"],"sourcesContent":["import { addAutoIdStaticUserMapping } from '../../ops/AdminOps';\nimport { getTokens } from '../../ops/AuthenticateOps';\nimport { printMessage } from '../../utils/Console.js';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst program = new FrodoCommand('frodo admin add-autoid-static-user-mapping');\n\nprogram\n .description(\n 'Add AutoId static user mapping to enable dashboards and other AutoId-based functionality.'\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n printMessage(`Adding AutoId static user mapping...`);\n const outcome = await addAutoIdStaticUserMapping();\n if (!outcome) process.exitCode = 1;\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,0BAA0B,QAAQ,oBAAoB;AAC/D,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SAASC,YAAY,QAAQ,wBAAwB;AACrD,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAMC,OAAO,GAAG,IAAID,YAAY,CAAC,4CAA4C,CAAC;AAE9EC,OAAO,CACJC,WAAW,CACV,2FACF,CAAC,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMX,SAAS,CAAC,CAAC,EAAE;IACrBC,YAAY,CAAE,sCAAqC,CAAC;IACpD,MAAMY,OAAO,GAAG,MAAMd,0BAA0B,CAAC,CAAC;IAClD,IAAI,CAACc,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;AAEHZ,OAAO,CAACa,KAAK,CAAC,CAAC"}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { state } from '@rockcarver/frodo-lib';
|
|
2
2
|
import Table from 'cli-table3';
|
|
3
3
|
import { Option } from 'commander';
|
|
4
4
|
import { v4 as uuidv4 } from 'uuid';
|
|
5
|
+
import { createLongLivedToken, createOAuth2ClientWithAdminPrivileges } from '../../ops/AdminOps';
|
|
5
6
|
import { getTokens } from '../../ops/AuthenticateOps';
|
|
6
|
-
import { printMessage } from '../../utils/Console.js';
|
|
7
|
+
import { printError, printMessage } from '../../utils/Console.js';
|
|
7
8
|
import { FrodoCommand } from '../FrodoCommand';
|
|
8
|
-
const {
|
|
9
|
-
createOAuth2ClientWithAdminPrivileges,
|
|
10
|
-
createLongLivedToken
|
|
11
|
-
} = frodo.admin;
|
|
12
9
|
const program = new FrodoCommand('frodo admin create-oauth2-client-with-admin-privileges');
|
|
13
10
|
program.description('Create an oauth2 client with admin privileges.').addOption(new Option('--client-id [id]', 'Client id.')).addOption(new Option('--client-secret [secret]', 'Client secret.')).addOption(new Option('--llt', 'Create a long-lived token and store it in a secret. The default secret name is esv-admin-token and the default token lifetime is 315,360,000 seconds (10 years). Both can be overwritten with the --llt-esv and --llt-ttl options.')).addOption(new Option('--llt-scope [scope]', 'Request the following scope(s). This option only applies if used with the --llt option.').default('fr:idm:*', 'fr:idm:*')).addOption(new Option('--llt-esv [esv]', 'Name of the secret to store the token in. This option only applies if used with the --llt option.').default('esv-admin-token', 'esv-admin-token')).addOption(new Option('--no-llt-esv', "Don't store the token in a secret and output to console instead. This option only applies if used with the --llt option.")).addOption(new Option('--llt-ttl [ttl]', 'Token lifetime (seconds). This option only applies if used with the --llt option.').default(315360000, '315,360,000 seconds (10 years)')).action(
|
|
14
11
|
// implement command logic inside action handler
|
|
@@ -24,54 +21,52 @@ async (host, realm, user, password, options, command) => {
|
|
|
24
21
|
if (options.clientSecret) {
|
|
25
22
|
clientSecret = options.clientSecret;
|
|
26
23
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
printMessage(`${response.access_token}`, 'data');
|
|
24
|
+
if (await createOAuth2ClientWithAdminPrivileges(clientId, clientSecret)) {
|
|
25
|
+
const table = new Table({
|
|
26
|
+
chars: {
|
|
27
|
+
top: '',
|
|
28
|
+
'top-mid': '',
|
|
29
|
+
'top-left': '',
|
|
30
|
+
'top-right': '',
|
|
31
|
+
bottom: '',
|
|
32
|
+
'bottom-mid': '',
|
|
33
|
+
'bottom-left': '',
|
|
34
|
+
'bottom-right': '',
|
|
35
|
+
left: '',
|
|
36
|
+
'left-mid': '',
|
|
37
|
+
mid: '',
|
|
38
|
+
'mid-mid': '',
|
|
39
|
+
right: '',
|
|
40
|
+
'right-mid': ''
|
|
41
|
+
},
|
|
42
|
+
style: {
|
|
43
|
+
'padding-left': 0,
|
|
44
|
+
'padding-right': 0
|
|
45
|
+
},
|
|
46
|
+
wordWrap: true
|
|
47
|
+
});
|
|
48
|
+
table.push(['Client ID'['brightCyan'], clientId]);
|
|
49
|
+
table.push(['Client Secret'['brightCyan'], clientSecret]);
|
|
50
|
+
if (options.llt) {
|
|
51
|
+
try {
|
|
52
|
+
const response = await createLongLivedToken(clientId, clientSecret, options.lltScope, options.lltEsv, options.lltTtl);
|
|
53
|
+
if (options.lltEsv) table.push(['Secret Name'['brightCyan'], response.secret]);
|
|
54
|
+
table.push(['Scope'['brightCyan'], response.scope]);
|
|
55
|
+
table.push(['Expires'['brightCyan'], response.expires_on]);
|
|
56
|
+
printMessage(table.toString());
|
|
57
|
+
if (options.lltEsv === false) {
|
|
58
|
+
printMessage(`\nBearer token:`, 'info');
|
|
59
|
+
printMessage(`${response.access_token}`, 'data');
|
|
60
|
+
}
|
|
61
|
+
} catch (error) {
|
|
62
|
+
printError(error);
|
|
63
|
+
process.exitCode = 1;
|
|
68
64
|
}
|
|
69
|
-
}
|
|
70
|
-
printMessage(
|
|
71
|
-
process.exitCode = 1;
|
|
65
|
+
} else {
|
|
66
|
+
printMessage(table.toString());
|
|
72
67
|
}
|
|
73
68
|
} else {
|
|
74
|
-
|
|
69
|
+
process.exitCode = 1;
|
|
75
70
|
}
|
|
76
71
|
} else {
|
|
77
72
|
process.exitCode = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-create-oauth2-client-with-admin-privileges.js","names":["
|
|
1
|
+
{"version":3,"file":"admin-create-oauth2-client-with-admin-privileges.js","names":["state","Table","Option","v4","uuidv4","createLongLivedToken","createOAuth2ClientWithAdminPrivileges","getTokens","printError","printMessage","FrodoCommand","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","getRealm","clientId","clientSecret","table","chars","top","bottom","left","mid","right","style","wordWrap","push","llt","response","lltScope","lltEsv","lltTtl","secret","scope","expires_on","toString","access_token","error","process","exitCode","parse"],"sources":["../../../src/cli/admin/admin-create-oauth2-client-with-admin-privileges.ts"],"sourcesContent":["import { state } from '@rockcarver/frodo-lib';\nimport Table from 'cli-table3';\nimport { Option } from 'commander';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport {\n createLongLivedToken,\n createOAuth2ClientWithAdminPrivileges,\n} from '../../ops/AdminOps';\nimport { getTokens } from '../../ops/AuthenticateOps';\nimport { printError, printMessage } from '../../utils/Console.js';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst program = new FrodoCommand(\n 'frodo admin create-oauth2-client-with-admin-privileges'\n);\n\nprogram\n .description('Create an oauth2 client with admin privileges.')\n .addOption(new Option('--client-id [id]', 'Client id.'))\n .addOption(new Option('--client-secret [secret]', 'Client secret.'))\n .addOption(\n new Option(\n '--llt',\n 'Create a long-lived token and store it in a secret. The default secret name is esv-admin-token and the default token lifetime is 315,360,000 seconds (10 years). Both can be overwritten with the --llt-esv and --llt-ttl options.'\n )\n )\n .addOption(\n new Option(\n '--llt-scope [scope]',\n 'Request the following scope(s). This option only applies if used with the --llt option.'\n ).default('fr:idm:*', 'fr:idm:*')\n )\n .addOption(\n new Option(\n '--llt-esv [esv]',\n 'Name of the secret to store the token in. This option only applies if used with the --llt option.'\n ).default('esv-admin-token', 'esv-admin-token')\n )\n .addOption(\n new Option(\n '--no-llt-esv',\n \"Don't store the token in a secret and output to console instead. This option only applies if used with the --llt option.\"\n )\n )\n .addOption(\n new Option(\n '--llt-ttl [ttl]',\n 'Token lifetime (seconds). This option only applies if used with the --llt option.'\n ).default(315360000, '315,360,000 seconds (10 years)')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n printMessage(\n `Creating oauth2 client with admin privileges in realm \"${state.getRealm()}\"...`\n );\n let clientId = uuidv4();\n let clientSecret = uuidv4();\n if (options.clientId) {\n clientId = options.clientId;\n }\n if (options.clientSecret) {\n clientSecret = options.clientSecret;\n }\n if (\n await createOAuth2ClientWithAdminPrivileges(clientId, clientSecret)\n ) {\n const table = new Table({\n chars: {\n top: '',\n 'top-mid': '',\n 'top-left': '',\n 'top-right': '',\n bottom: '',\n 'bottom-mid': '',\n 'bottom-left': '',\n 'bottom-right': '',\n left: '',\n 'left-mid': '',\n mid: '',\n 'mid-mid': '',\n right: '',\n 'right-mid': '',\n },\n style: { 'padding-left': 0, 'padding-right': 0 },\n wordWrap: true,\n });\n table.push(['Client ID'['brightCyan'], clientId]);\n table.push(['Client Secret'['brightCyan'], clientSecret]);\n if (options.llt) {\n try {\n const response = await createLongLivedToken(\n clientId,\n clientSecret,\n options.lltScope,\n options.lltEsv,\n options.lltTtl\n );\n if (options.lltEsv)\n table.push(['Secret Name'['brightCyan'], response.secret]);\n table.push(['Scope'['brightCyan'], response.scope]);\n table.push(['Expires'['brightCyan'], response.expires_on]);\n printMessage(table.toString());\n if (options.lltEsv === false) {\n printMessage(`\\nBearer token:`, 'info');\n printMessage(`${response.access_token}`, 'data');\n }\n } catch (error) {\n printError(error);\n process.exitCode = 1;\n }\n } else {\n printMessage(table.toString());\n }\n } else {\n process.exitCode = 1;\n }\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Option } from 'commander';
|
|
2
|
-
import { exportAdminFederationProvidersToFile, exportAdminFederationProvidersToFiles, exportAdminFederationProviderToFile } from '../../ops/AdminFederationOps';
|
|
3
2
|
import { getTokens } from '../../ops/AuthenticateOps';
|
|
3
|
+
import { exportAdminFederationProvidersToFile, exportAdminFederationProvidersToFiles, exportAdminFederationProviderToFile } from '../../ops/cloud/AdminFederationOps';
|
|
4
4
|
import { printMessage, verboseMessage } from '../../utils/Console';
|
|
5
5
|
import { FrodoCommand } from '../FrodoCommand';
|
|
6
6
|
const program = new FrodoCommand('frodo admin federation export', ['realm']);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-federation-export.js","names":["Option","exportAdminFederationProvidersToFile","exportAdminFederationProvidersToFiles","exportAdminFederationProviderToFile","
|
|
1
|
+
{"version":3,"file":"admin-federation-export.js","names":["Option","getTokens","exportAdminFederationProvidersToFile","exportAdminFederationProvidersToFiles","exportAdminFederationProviderToFile","printMessage","verboseMessage","FrodoCommand","program","description","addOption","action","host","user","password","options","command","handleDefaultArgsAndOpts","idpId","outcome","file","metadata","process","exitCode","all","allSeparate","help","parse"],"sources":["../../../src/cli/admin/admin-federation-export.ts"],"sourcesContent":["import { Option } from 'commander';\n\nimport { getTokens } from '../../ops/AuthenticateOps';\nimport {\n exportAdminFederationProvidersToFile,\n exportAdminFederationProvidersToFiles,\n exportAdminFederationProviderToFile,\n} from '../../ops/cloud/AdminFederationOps';\nimport { printMessage, verboseMessage } from '../../utils/Console';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst program = new FrodoCommand('frodo admin federation export', ['realm']);\n\nprogram\n .description('Export admin federation providers.')\n .addOption(\n new Option(\n '-i, --idp-id <idp-id>',\n 'Id/name of a provider. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file [file]',\n 'Name of the file to write the exported provider(s) to. Ignored with -A.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Export all the providers to a single file. Ignored with -t and -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all the providers as separate files <provider name>.admin.federation.json. Ignored with -t, -i, and -a.'\n )\n )\n .addOption(\n new Option(\n '-N, --no-metadata',\n 'Does not include metadata in the export file.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(host, user, password, options, command);\n if (await getTokens(true)) {\n // export by id/name\n if (options.idpId) {\n verboseMessage(`Exporting provider \"${options.idpId}...`);\n const outcome = await exportAdminFederationProviderToFile(\n options.idpId,\n options.file,\n options.metadata\n );\n if (!outcome) process.exitCode = 1;\n }\n // --all -a\n else if (options.all) {\n verboseMessage('Exporting all providers to a single file...');\n const outcome = await exportAdminFederationProvidersToFile(\n options.file,\n options.metadata\n );\n if (!outcome) process.exitCode = 1;\n }\n // --all-separate -A\n else if (options.allSeparate) {\n verboseMessage('Exporting all providers to separate files...');\n const outcome = await exportAdminFederationProvidersToFiles(\n options.metadata\n );\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n process.exitCode = 1;\n }\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,WAAW;AAElC,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SACEC,oCAAoC,EACpCC,qCAAqC,EACrCC,mCAAmC,QAC9B,oCAAoC;AAC3C,SAASC,YAAY,EAAEC,cAAc,QAAQ,qBAAqB;AAClE,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAMC,OAAO,GAAG,IAAID,YAAY,CAAC,+BAA+B,EAAE,CAAC,OAAO,CAAC,CAAC;AAE5EC,OAAO,CACJC,WAAW,CAAC,oCAAoC,CAAC,CACjDC,SAAS,CACR,IAAIV,MAAM,CACR,uBAAuB,EACvB,6DACF,CACF,CAAC,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,mBAAmB,EACnB,yEACF,CACF,CAAC,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,WAAW,EACX,oEACF,CACF,CAAC,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,oBAAoB,EACpB,gHACF,CACF,CAAC,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,mBAAmB,EACnB,+CACF,CACF,CAAC,CACAW,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EAChDA,OAAO,CAACC,wBAAwB,CAACL,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,CAAC;EACxE,IAAI,MAAMf,SAAS,CAAC,IAAI,CAAC,EAAE;IACzB;IACA,IAAIc,OAAO,CAACG,KAAK,EAAE;MACjBZ,cAAc,CAAE,uBAAsBS,OAAO,CAACG,KAAM,KAAI,CAAC;MACzD,MAAMC,OAAO,GAAG,MAAMf,mCAAmC,CACvDW,OAAO,CAACG,KAAK,EACbH,OAAO,CAACK,IAAI,EACZL,OAAO,CAACM,QACV,CAAC;MACD,IAAI,CAACF,OAAO,EAAEG,OAAO,CAACC,QAAQ,GAAG,CAAC;IACpC;IACA;IAAA,KACK,IAAIR,OAAO,CAACS,GAAG,EAAE;MACpBlB,cAAc,CAAC,6CAA6C,CAAC;MAC7D,MAAMa,OAAO,GAAG,MAAMjB,oCAAoC,CACxDa,OAAO,CAACK,IAAI,EACZL,OAAO,CAACM,QACV,CAAC;MACD,IAAI,CAACF,OAAO,EAAEG,OAAO,CAACC,QAAQ,GAAG,CAAC;IACpC;IACA;IAAA,KACK,IAAIR,OAAO,CAACU,WAAW,EAAE;MAC5BnB,cAAc,CAAC,8CAA8C,CAAC;MAC9D,MAAMa,OAAO,GAAG,MAAMhB,qCAAqC,CACzDY,OAAO,CAACM,QACV,CAAC;MACD,IAAI,CAACF,OAAO,EAAEG,OAAO,CAACC,QAAQ,GAAG,CAAC;IACpC;IACA;IAAA,KACK;MACHlB,YAAY,CACV,sDAAsD,EACtD,OACF,CAAC;MACDG,OAAO,CAACkB,IAAI,CAAC,CAAC;MACdJ,OAAO,CAACC,QAAQ,GAAG,CAAC;IACtB;EACF;AACF;AACA;AACF,CAAC;AAEHf,OAAO,CAACmB,KAAK,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Option } from 'commander';
|
|
2
|
-
import { importAdminFederationProviderFromFile, importAdminFederationProvidersFromFile, importAdminFederationProvidersFromFiles, importFirstAdminFederationProviderFromFile } from '../../ops/AdminFederationOps';
|
|
3
2
|
import { getTokens } from '../../ops/AuthenticateOps';
|
|
3
|
+
import { importAdminFederationProviderFromFile, importAdminFederationProvidersFromFile, importAdminFederationProvidersFromFiles, importFirstAdminFederationProviderFromFile } from '../../ops/cloud/AdminFederationOps';
|
|
4
4
|
import { printMessage, verboseMessage } from '../../utils/Console';
|
|
5
5
|
import { FrodoCommand } from '../FrodoCommand';
|
|
6
6
|
const program = new FrodoCommand('frodo admin federation import', ['realm']);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-federation-import.js","names":["Option","importAdminFederationProviderFromFile","importAdminFederationProvidersFromFile","importAdminFederationProvidersFromFiles","importFirstAdminFederationProviderFromFile","
|
|
1
|
+
{"version":3,"file":"admin-federation-import.js","names":["Option","getTokens","importAdminFederationProviderFromFile","importAdminFederationProvidersFromFile","importAdminFederationProvidersFromFiles","importFirstAdminFederationProviderFromFile","printMessage","verboseMessage","FrodoCommand","program","description","addOption","action","host","user","password","options","command","handleDefaultArgsAndOpts","file","idpId","outcome","process","exitCode","all","allSeparate","help","parse"],"sources":["../../../src/cli/admin/admin-federation-import.ts"],"sourcesContent":["import { Option } from 'commander';\n\nimport { getTokens } from '../../ops/AuthenticateOps';\nimport {\n importAdminFederationProviderFromFile,\n importAdminFederationProvidersFromFile,\n importAdminFederationProvidersFromFiles,\n importFirstAdminFederationProviderFromFile,\n} from '../../ops/cloud/AdminFederationOps';\nimport { printMessage, verboseMessage } from '../../utils/Console';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst program = new FrodoCommand('frodo admin federation import', ['realm']);\n\nprogram\n .description('Import admin federation providers.')\n .addOption(\n new Option(\n '-i, --idp-id <id>',\n 'Provider id. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the file to import the provider(s) from.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Import all the providers from single file. Ignored with -t or -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all the providers from separate files (*.admin.federation.json) in the current directory. Ignored with -t or -i or -a.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(host, user, password, options, command);\n // import by id\n if (options.file && options.idpId && (await getTokens(true))) {\n verboseMessage(`Importing provider \"${options.idpId}\"...`);\n const outcome = await importAdminFederationProviderFromFile(\n options.idpId,\n options.file\n );\n if (!outcome) process.exitCode = 1;\n }\n // --all -a\n else if (options.all && options.file && (await getTokens(true))) {\n verboseMessage(\n `Importing all providers from a single file (${options.file})...`\n );\n const outcome = await importAdminFederationProvidersFromFile(\n options.file\n );\n if (!outcome) process.exitCode = 1;\n }\n // --all-separate -A\n else if (\n options.allSeparate &&\n !options.file &&\n (await getTokens(true))\n ) {\n verboseMessage(\n 'Importing all providers from separate files in current directory...'\n );\n const outcome = await importAdminFederationProvidersFromFiles();\n if (!outcome) process.exitCode = 1;\n }\n // import first provider from file\n else if (options.file && (await getTokens(true))) {\n verboseMessage(\n `Importing first provider from file \"${options.file}\"...`\n );\n const outcome = await importFirstAdminFederationProviderFromFile(\n options.file\n );\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n printMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,WAAW;AAElC,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SACEC,qCAAqC,EACrCC,sCAAsC,EACtCC,uCAAuC,EACvCC,0CAA0C,QACrC,oCAAoC;AAC3C,SAASC,YAAY,EAAEC,cAAc,QAAQ,qBAAqB;AAClE,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAMC,OAAO,GAAG,IAAID,YAAY,CAAC,+BAA+B,EAAE,CAAC,OAAO,CAAC,CAAC;AAE5EC,OAAO,CACJC,WAAW,CAAC,oCAAoC,CAAC,CACjDC,SAAS,CACR,IAAIX,MAAM,CACR,mBAAmB,EACnB,mDACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,mBAAmB,EACnB,kDACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,mEACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,oBAAoB,EACpB,+HACF,CACF,CAAC,CACAY,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EAChDA,OAAO,CAACC,wBAAwB,CAACL,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,CAAC;EACxE;EACA,IAAID,OAAO,CAACG,IAAI,IAAIH,OAAO,CAACI,KAAK,KAAK,MAAMnB,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE;IAC5DM,cAAc,CAAE,uBAAsBS,OAAO,CAACI,KAAM,MAAK,CAAC;IAC1D,MAAMC,OAAO,GAAG,MAAMnB,qCAAqC,CACzDc,OAAO,CAACI,KAAK,EACbJ,OAAO,CAACG,IACV,CAAC;IACD,IAAI,CAACE,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIP,OAAO,CAACQ,GAAG,IAAIR,OAAO,CAACG,IAAI,KAAK,MAAMlB,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE;IAC/DM,cAAc,CACX,+CAA8CS,OAAO,CAACG,IAAK,MAC9D,CAAC;IACD,MAAME,OAAO,GAAG,MAAMlB,sCAAsC,CAC1Da,OAAO,CAACG,IACV,CAAC;IACD,IAAI,CAACE,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IACHP,OAAO,CAACS,WAAW,IACnB,CAACT,OAAO,CAACG,IAAI,KACZ,MAAMlB,SAAS,CAAC,IAAI,CAAC,CAAC,EACvB;IACAM,cAAc,CACZ,qEACF,CAAC;IACD,MAAMc,OAAO,GAAG,MAAMjB,uCAAuC,CAAC,CAAC;IAC/D,IAAI,CAACiB,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIP,OAAO,CAACG,IAAI,KAAK,MAAMlB,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE;IAChDM,cAAc,CACX,uCAAsCS,OAAO,CAACG,IAAK,MACtD,CAAC;IACD,MAAME,OAAO,GAAG,MAAMhB,0CAA0C,CAC9DW,OAAO,CAACG,IACV,CAAC;IACD,IAAI,CAACE,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHjB,YAAY,CAAC,sDAAsD,CAAC;IACpEG,OAAO,CAACiB,IAAI,CAAC,CAAC;IACdJ,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;AAEHd,OAAO,CAACkB,KAAK,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { listAdminFederationProviders } from '../../ops/AdminFederationOps';
|
|
2
1
|
import { getTokens } from '../../ops/AuthenticateOps';
|
|
2
|
+
import { listAdminFederationProviders } from '../../ops/cloud/AdminFederationOps';
|
|
3
3
|
import { verboseMessage } from '../../utils/Console';
|
|
4
4
|
import { FrodoCommand } from '../FrodoCommand';
|
|
5
5
|
const program = new FrodoCommand('frodo admin federation list', ['realm']);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-federation-list.js","names":["
|
|
1
|
+
{"version":3,"file":"admin-federation-list.js","names":["getTokens","listAdminFederationProviders","verboseMessage","FrodoCommand","program","description","action","host","user","password","options","command","handleDefaultArgsAndOpts","outcome","process","exitCode","parse"],"sources":["../../../src/cli/admin/admin-federation-list.ts"],"sourcesContent":["import { getTokens } from '../../ops/AuthenticateOps';\nimport { listAdminFederationProviders } from '../../ops/cloud/AdminFederationOps';\nimport { verboseMessage } from '../../utils/Console';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst program = new FrodoCommand('frodo admin federation list', ['realm']);\n\nprogram\n .description('List admin federation providers.')\n // .addOption(\n // new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n // )\n .action(\n // implement command logic inside action handler\n async (host, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(host, user, password, options, command);\n if (await getTokens(true)) {\n verboseMessage(`Listing admin federation providers...`);\n const outcome = await listAdminFederationProviders();\n if (!outcome) process.exitCode = 1;\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,2BAA2B;AACrD,SAASC,4BAA4B,QAAQ,oCAAoC;AACjF,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAMC,OAAO,GAAG,IAAID,YAAY,CAAC,6BAA6B,EAAE,CAAC,OAAO,CAAC,CAAC;AAE1EC,OAAO,CACJC,WAAW,CAAC,kCAAkC;AAC/C;AACA;AACA;AAAA,CACCC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EAChDA,OAAO,CAACC,wBAAwB,CAACL,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,CAAC;EACxE,IAAI,MAAMX,SAAS,CAAC,IAAI,CAAC,EAAE;IACzBE,cAAc,CAAE,uCAAsC,CAAC;IACvD,MAAMW,OAAO,GAAG,MAAMZ,4BAA4B,CAAC,CAAC;IACpD,IAAI,CAACY,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;AAEHX,OAAO,CAACY,KAAK,CAAC,CAAC"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { state } from '@rockcarver/frodo-lib';
|
|
2
2
|
import { Option } from 'commander';
|
|
3
|
+
import { grantOAuth2ClientAdminPrivileges } from '../../ops/AdminOps';
|
|
3
4
|
import { getTokens } from '../../ops/AuthenticateOps';
|
|
4
5
|
import { printMessage } from '../../utils/Console.js';
|
|
5
6
|
import { FrodoCommand } from '../FrodoCommand';
|
|
6
|
-
const {
|
|
7
|
-
grantOAuth2ClientAdminPrivileges
|
|
8
|
-
} = frodo.admin;
|
|
9
7
|
const program = new FrodoCommand('frodo admin grant-oauth2-client-admin-privileges');
|
|
10
8
|
program.description('Grant an oauth2 client admin privileges.').addOption(new Option('-i, --client-id <id>', 'OAuth2 client id.')).addOption(new Option('-t, --target <target name or id>', 'Name of the oauth2 client.').hideHelp()).action(
|
|
11
9
|
// implement command logic inside action handler
|
|
@@ -13,8 +11,8 @@ async (host, realm, user, password, options, command) => {
|
|
|
13
11
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
14
12
|
if (await getTokens()) {
|
|
15
13
|
printMessage(`Granting oauth2 client "${options.clientId || options.target}" in realm "${state.getRealm()}" admin privileges...`);
|
|
16
|
-
await grantOAuth2ClientAdminPrivileges(options.clientId || options.target);
|
|
17
|
-
|
|
14
|
+
const outcome = await grantOAuth2ClientAdminPrivileges(options.clientId || options.target);
|
|
15
|
+
if (!outcome) process.exitCode = 1;
|
|
18
16
|
} else {
|
|
19
17
|
process.exitCode = 1;
|
|
20
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-grant-oauth2-client-admin-privileges.js","names":["
|
|
1
|
+
{"version":3,"file":"admin-grant-oauth2-client-admin-privileges.js","names":["state","Option","grantOAuth2ClientAdminPrivileges","getTokens","printMessage","FrodoCommand","program","description","addOption","hideHelp","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","clientId","target","getRealm","outcome","process","exitCode","parse"],"sources":["../../../src/cli/admin/admin-grant-oauth2-client-admin-privileges.ts"],"sourcesContent":["import { state } from '@rockcarver/frodo-lib';\nimport { Option } from 'commander';\n\nimport { grantOAuth2ClientAdminPrivileges } from '../../ops/AdminOps';\nimport { getTokens } from '../../ops/AuthenticateOps';\nimport { printMessage } from '../../utils/Console.js';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst program = new FrodoCommand(\n 'frodo admin grant-oauth2-client-admin-privileges'\n);\n\nprogram\n .description('Grant an oauth2 client admin privileges.')\n .addOption(new Option('-i, --client-id <id>', 'OAuth2 client id.'))\n .addOption(\n new Option(\n '-t, --target <target name or id>',\n 'Name of the oauth2 client.'\n ).hideHelp()\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n printMessage(\n `Granting oauth2 client \"${\n options.clientId || options.target\n }\" in realm \"${state.getRealm()}\" admin privileges...`\n );\n const outcome = await grantOAuth2ClientAdminPrivileges(\n options.clientId || options.target\n );\n if (!outcome) process.exitCode = 1;\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,MAAM,QAAQ,WAAW;AAElC,SAASC,gCAAgC,QAAQ,oBAAoB;AACrE,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SAASC,YAAY,QAAQ,wBAAwB;AACrD,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAMC,OAAO,GAAG,IAAID,YAAY,CAC9B,kDACF,CAAC;AAEDC,OAAO,CACJC,WAAW,CAAC,0CAA0C,CAAC,CACvDC,SAAS,CAAC,IAAIP,MAAM,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,CAAC,CAClEO,SAAS,CACR,IAAIP,MAAM,CACR,kCAAkC,EAClC,4BACF,CAAC,CAACQ,QAAQ,CAAC,CACb,CAAC,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMb,SAAS,CAAC,CAAC,EAAE;IACrBC,YAAY,CACT,2BACCW,OAAO,CAACG,QAAQ,IAAIH,OAAO,CAACI,MAC7B,eAAcnB,KAAK,CAACoB,QAAQ,CAAC,CAAE,uBAClC,CAAC;IACD,MAAMC,OAAO,GAAG,MAAMnB,gCAAgC,CACpDa,OAAO,CAACG,QAAQ,IAAIH,OAAO,CAACI,MAC9B,CAAC;IACD,IAAI,CAACE,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;AAEHjB,OAAO,CAACkB,KAAK,CAAC,CAAC"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { state } from '@rockcarver/frodo-lib';
|
|
2
2
|
import { Option } from 'commander';
|
|
3
|
+
import { hideGenericExtensionAttributes } from '../../ops/AdminOps';
|
|
3
4
|
import { getTokens } from '../../ops/AuthenticateOps';
|
|
4
5
|
import { printMessage } from '../../utils/Console.js';
|
|
5
6
|
import { FrodoCommand } from '../FrodoCommand';
|
|
6
|
-
const {
|
|
7
|
-
hideGenericExtensionAttributes
|
|
8
|
-
} = frodo.admin;
|
|
9
7
|
const program = new FrodoCommand('frodo admin hide-generic-extension-attributes');
|
|
10
8
|
program.description('Hide generic extension attributes.').addOption(new Option('--include-customized', 'Include customized attributes.')).addOption(new Option('--dry-run', 'Dry-run only, do not perform changes.')).action(
|
|
11
9
|
// implement command logic inside action handler
|
|
@@ -13,8 +11,8 @@ async (host, realm, user, password, options, command) => {
|
|
|
13
11
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
14
12
|
if (await getTokens()) {
|
|
15
13
|
printMessage(`Hiding generic extension attributes in realm "${state.getRealm()}"...`);
|
|
16
|
-
await hideGenericExtensionAttributes(options.includeCustomized, options.dryRun);
|
|
17
|
-
|
|
14
|
+
const outcome = await hideGenericExtensionAttributes(options.includeCustomized, options.dryRun);
|
|
15
|
+
if (!outcome) process.exitCode = 1;
|
|
18
16
|
} else {
|
|
19
17
|
process.exitCode = 1;
|
|
20
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-hide-generic-extension-attributes.js","names":["
|
|
1
|
+
{"version":3,"file":"admin-hide-generic-extension-attributes.js","names":["state","Option","hideGenericExtensionAttributes","getTokens","printMessage","FrodoCommand","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","getRealm","outcome","includeCustomized","dryRun","process","exitCode","parse"],"sources":["../../../src/cli/admin/admin-hide-generic-extension-attributes.ts"],"sourcesContent":["import { state } from '@rockcarver/frodo-lib';\nimport { Option } from 'commander';\n\nimport { hideGenericExtensionAttributes } from '../../ops/AdminOps';\nimport { getTokens } from '../../ops/AuthenticateOps';\nimport { printMessage } from '../../utils/Console.js';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst program = new FrodoCommand(\n 'frodo admin hide-generic-extension-attributes'\n);\n\nprogram\n .description('Hide generic extension attributes.')\n .addOption(\n new Option('--include-customized', 'Include customized attributes.')\n )\n .addOption(new Option('--dry-run', 'Dry-run only, do not perform changes.'))\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n printMessage(\n `Hiding generic extension attributes in realm \"${state.getRealm()}\"...`\n );\n const outcome = await hideGenericExtensionAttributes(\n options.includeCustomized,\n options.dryRun\n );\n if (!outcome) process.exitCode = 1;\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,MAAM,QAAQ,WAAW;AAElC,SAASC,8BAA8B,QAAQ,oBAAoB;AACnE,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SAASC,YAAY,QAAQ,wBAAwB;AACrD,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAMC,OAAO,GAAG,IAAID,YAAY,CAC9B,+CACF,CAAC;AAEDC,OAAO,CACJC,WAAW,CAAC,oCAAoC,CAAC,CACjDC,SAAS,CACR,IAAIP,MAAM,CAAC,sBAAsB,EAAE,gCAAgC,CACrE,CAAC,CACAO,SAAS,CAAC,IAAIP,MAAM,CAAC,WAAW,EAAE,uCAAuC,CAAC,CAAC,CAC3EQ,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMZ,SAAS,CAAC,CAAC,EAAE;IACrBC,YAAY,CACT,iDAAgDJ,KAAK,CAACiB,QAAQ,CAAC,CAAE,MACpE,CAAC;IACD,MAAMC,OAAO,GAAG,MAAMhB,8BAA8B,CAClDY,OAAO,CAACK,iBAAiB,EACzBL,OAAO,CAACM,MACV,CAAC;IACD,IAAI,CAACF,OAAO,EAAEG,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;AAEHhB,OAAO,CAACiB,KAAK,CAAC,CAAC"}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { state } from '@rockcarver/frodo-lib';
|
|
2
|
+
import { listOAuth2AdminClients } from '../../ops/AdminOps';
|
|
2
3
|
import { getTokens } from '../../ops/AuthenticateOps';
|
|
3
4
|
import { printMessage } from '../../utils/Console.js';
|
|
4
5
|
import { FrodoCommand } from '../FrodoCommand';
|
|
5
|
-
const {
|
|
6
|
-
listOAuth2AdminClients
|
|
7
|
-
} = frodo.admin;
|
|
8
6
|
const program = new FrodoCommand('frodo admin list-oauth2-clients-with-admin-privileges');
|
|
9
7
|
program.description('List oauth2 clients with admin privileges.').action(
|
|
10
8
|
// implement command logic inside action handler
|
|
@@ -12,11 +10,8 @@ async (host, realm, user, password, options, command) => {
|
|
|
12
10
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
13
11
|
if (await getTokens()) {
|
|
14
12
|
printMessage(`Listing oauth2 clients with admin privileges in realm "${state.getRealm()}"...`);
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
adminClients.forEach(item => {
|
|
18
|
-
printMessage(`${item}`, 'data');
|
|
19
|
-
});
|
|
13
|
+
const outcome = await listOAuth2AdminClients();
|
|
14
|
+
if (!outcome) process.exitCode = 1;
|
|
20
15
|
} else {
|
|
21
16
|
process.exitCode = 1;
|
|
22
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-list-oauth2-clients-with-admin-privileges.js","names":["
|
|
1
|
+
{"version":3,"file":"admin-list-oauth2-clients-with-admin-privileges.js","names":["state","listOAuth2AdminClients","getTokens","printMessage","FrodoCommand","program","description","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","getRealm","outcome","process","exitCode","parse"],"sources":["../../../src/cli/admin/admin-list-oauth2-clients-with-admin-privileges.ts"],"sourcesContent":["import { state } from '@rockcarver/frodo-lib';\n\nimport { listOAuth2AdminClients } from '../../ops/AdminOps';\nimport { getTokens } from '../../ops/AuthenticateOps';\nimport { printMessage } from '../../utils/Console.js';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst program = new FrodoCommand(\n 'frodo admin list-oauth2-clients-with-admin-privileges'\n);\n\nprogram.description('List oauth2 clients with admin privileges.').action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n printMessage(\n `Listing oauth2 clients with admin privileges in realm \"${state.getRealm()}\"...`\n );\n const outcome = await listOAuth2AdminClients();\n if (!outcome) process.exitCode = 1;\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n);\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAE7C,SAASC,sBAAsB,QAAQ,oBAAoB;AAC3D,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SAASC,YAAY,QAAQ,wBAAwB;AACrD,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAMC,OAAO,GAAG,IAAID,YAAY,CAC9B,uDACF,CAAC;AAEDC,OAAO,CAACC,WAAW,CAAC,4CAA4C,CAAC,CAACC,MAAM;AACtE;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMX,SAAS,CAAC,CAAC,EAAE;IACrBC,YAAY,CACT,0DAAyDH,KAAK,CAACe,QAAQ,CAAC,CAAE,MAC7E,CAAC;IACD,MAAMC,OAAO,GAAG,MAAMf,sBAAsB,CAAC,CAAC;IAC9C,IAAI,CAACe,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;AAEDb,OAAO,CAACc,KAAK,CAAC,CAAC"}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { state } from '@rockcarver/frodo-lib';
|
|
2
|
+
import { listOAuth2CustomClients } from '../../ops/AdminOps';
|
|
2
3
|
import { getTokens } from '../../ops/AuthenticateOps';
|
|
3
4
|
import { printMessage } from '../../utils/Console.js';
|
|
4
5
|
import { FrodoCommand } from '../FrodoCommand';
|
|
5
|
-
const {
|
|
6
|
-
listOAuth2CustomClients
|
|
7
|
-
} = frodo.admin;
|
|
8
6
|
const program = new FrodoCommand('frodo admin list-oauth2-clients-with-custom-privileges');
|
|
9
7
|
program.description('List oauth2 clients with custom privileges.').action(
|
|
10
8
|
// implement command logic inside action handler
|
|
@@ -12,11 +10,8 @@ async (host, realm, user, password, options, command) => {
|
|
|
12
10
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
13
11
|
if (await getTokens()) {
|
|
14
12
|
printMessage(`Listing oauth2 clients with custom privileges in realm "${state.getRealm()}"...`);
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
adminClients.forEach(item => {
|
|
18
|
-
printMessage(`${item}`, 'data');
|
|
19
|
-
});
|
|
13
|
+
const outcome = await listOAuth2CustomClients();
|
|
14
|
+
if (!outcome) process.exitCode = 1;
|
|
20
15
|
} else {
|
|
21
16
|
process.exitCode = 1;
|
|
22
17
|
}
|